# To change this template, choose Tools | Templates
# and open the template in the editor.
#puts "Hello World"
include Java
include_class javax.swing.JFrame
include_class javax.swing.JPanel
include_class javax.swing.JButton
include_class java.awt.event.ActionListener
include_class javax.swing.JOptionPane
include_class java.awt.Color
#include_class java.awt.Container
class ButtonFrame < JFrame
def initialize
super "Hello world Swing"
setTitle__method "Button"
set_size(300,200)
panel=ButtonPanel.new
getContentPane().add(panel)
set_default_close_operation JFrame::EXIT_ON_CLOSE
set_visible true
end
end
class ButtonPanel <JPanel
def initialize
super
yellowbutton=JButton.new("Yellow")
redbutton=JButton.new("Red")
bluebutton=JButton.new("Blue")
add(yellowbutton)
add(redbutton)
add(bluebutton)
yellowbutton.addActionListener ActionListener.impl{ setBackground(Color::YELLOW) }
bluebutton.addActionListener ActionListener.impl{
setBackground(Color::BLUE) }
redbutton.addActionListener ActionListener.impl{ setBackground(Color::RED) }
end
# class Color_T
# include ActionListener
# def initialize(c)
# @c=c
# end
# def action_performed(event)
# setBackground(@c)
#
# end
# end
end
ButtonFrame.new
在用class Color_T的时候,出现问题了,Color_T是内部类,但是setbackground是外部类的方法,在Java中这个不存在访问的问题。但是JRuby中出现问题了,但是我还不清楚问题如何解决
分享到:
- 2009-08-23 11:20
- 浏览 1194
- 评论(2)
- 论坛回复 / 浏览 (2 / 2329)
- 查看更多
相关推荐
总结起来,"yang-parser-impl-92"是实现Yang数据模型解析的关键组件,它解析Yang模块,确保语法规则的正确性,并生成可供后续处理的内部数据结构。通过理解其工作原理,开发者可以更好地利用Yang来设计和实现网络...
例如,`javax.faces.component.UIComponent` 类代表一个可渲染的UI组件,而`javax.faces.event.ActionEvent` 则表示一个与用户交互相关的事件。 **jsf-impl.jar** `jsf-impl.jar` 文件则包含了JSF框架的实现代码,...
标题“win_impl.rar_event_sunwindow”暗示我们正在讨论与Windows实现相关的特定库,特别是与太阳窗口(SunWindow)事件管理有关的私有数据结构。在Windows操作系统中,事件管理是图形用户界面(GUI)编程的核心部分...
"sort_impl.rar"这个压缩包包含了多种排序算法的实现与测试代码,主要涉及了C++语言。文件包括"sort_test.cpp"、"sort-impl.h"和"sort.h"。 首先,我们来探讨一下排序算法的基本概念。排序是将一组无序的数据元素...
**JSF 2.0 源码解析:MyFaces 2.0.4 API + Impl** JavaServer Faces (JSF) 是一个用于构建企业级Web应用的Java框架,它提供了一种组件化的方式来创建用户界面。JSF 2.0是其一个重要版本,引入了许多新特性以提升...
由于类的接口没有改变,即使`Impl`类发生了变化,只要保证接口兼容,原有的二进制文件仍可以与新版本的库协同工作,增强了二进制兼容性。 ### 实现步骤 1. **定义接口类(Public Class)**:公开接口类声明一个...
yang-parser-impl-95很可能是一个实现了YANG语法解析的库,能够读取YANG模块,并将其转换为内部表示,以便进一步处理。另一方面,yang-data-impl-95可能包含处理YANG数据模型实例的代码,包括读取、写入、验证和操作...
解析器将YANG语法解析成内部数据结构,使得其他程序能够方便地操作这些数据。 2. **数据处理(Data Processing)**: `yang-data-impl`可能是指实现了对解析后的YANG数据进行操作的模块。这包括数据的读取、写入、...
3. **封装与信息隐藏**:"Impl"类可以是私有的,使得用户无法直接访问其实现,增强了封装性,保护了类的内部状态。 4. **异常安全**:在构造函数中,先创建"Impl"对象,再分配内存,如果分配失败,可以直接抛出异常...
嵌套类,也称为内部类,是在一个类的定义内部定义的类。它可以访问外部类的所有成员,包括私有成员,这为COM组件设计提供了灵活性。嵌套类在COM中的应用通常用于封装特定的功能或数据,使其只对COM组件内部可见,对...
Pimpl惯用法的基本思想是将类的私有数据成员(即实现部分)封装在一个单独的内部类(Impl类)中,然后在主类中仅保留一个指向Impl类的指针。这样做的好处在于: 1. **编译时隔离**:当修改类的实现细节时,只有Impl...
在C++编程语言中,`StringImpl`通常指的是一个内部实现细节,它是标准库`std::string`的一个可能的实现。`std::string`是一个非常重要的容器类,用于存储、操作和管理C风格的字符数组,即字符串。在这个场景下,`...
- **企业通讯**:XMPP可用于构建内部即时通讯系统,提升团队协作效率。 - **物联网**:设备间可以通过XMPP进行数据交换和控制命令传输。 - **游戏**:实时游戏中的聊天、组队等功能可以利用XMPP实现。 - **社交...
6. **开源软件**:Schwatcher和Brave的开源特性,使得开发者可以深入理解其内部机制,参与改进,并与其他开发者共享经验。 了解这些知识点后,开发者可以结合实际需求,选择合适的工具来提升系统的监控能力、扩展性...
wehax安卓内部库 cn.wehax.common主要包含以下功能: framework 提供一套mvp框架的声明和实现. widget 提供若干控件。 container 为fragment提供容器。 cn.wehax.util包含若干辅助类。 framework ...
标题 "rewrite-impl-servlet-3.0-2.0.3.Final.zip" 提供了一个关于Web应用程序开发的线索,特别是与Servlet 3.0规范相关。这可能是一个用于URL重写或路由的库,可能名为"Rewrite Impl",版本号为2.0.3.Final。在Java...
用 Rust 编写的内部 DirectX 11 ImGui 菜单英费里斯用Rust编写的概念验证内部 DirectX 11 ImGui菜单。Imferris通过 Rust 到 C++ 的互操作利用imgui_impl_win32.cpp平台和imgui_impl_dx11.cpp渲染器。用法确保安装了...
4. **封装与私有化**:Pimpl idiom增强了封装性,因为实现部分是私有的,只有类的内部可以访问。 在提供的文件名`pimpl`中,我们可以预期它包含了实现Pimpl idiom的C++代码。通常,这个文件会包含一个类,如`...
文章将重点介绍 Linux 2.4.x 内核中与 IPv4 相关的安全性实现,同时也将提及该版本在网络安全方面的重要概念:netfilter、iptables、match、target、nf_sockopt_ops 以及它们之间的关系。 #### 几个重要概念 1. **...
标题中的"addon-manager-impl-2.0.0.Alpha4.zip"表明这是一个软件的更新版本,具体来说是Addon Manager的实现部分,版本号为2.0.0的Alpha4阶段。Addon Manager通常是一个用于管理软件扩展或插件的工具,它帮助用户...