-
this关键字
>1.通过this关键字可以明确去访问一个类的成员变量,解决局部变量和成员变量名称冲突问题
>2.通过this关键字调用成员方法,this可以省略不写
>3.构造方法是在实例化对象时被Java虚拟机自动调用的,在程序中不能像调用其他方法一样去调用构造方法,但可以在一个构造方法中使用“this([参数类1,参数2,……])”的形式来调用其它的构造方法
在下面代码中,this指的是哪些
package cn.itcast.player;
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class Cardlayout extends Frame implements ActionListener{
Panel carPanel = new Panel();
Panel contPanel = new Panel();
Button nexButton,preButton;
CardLayout cardLayout=new CardLayout();
public Cardlayout() {
// TODO Auto-generated constructor stub
setSize(300,200);
setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
Cardlayout.this.dispose();
}
});
carPanel.setLayout(cardLayout);
carPanel.add(new Label("第一个界面",Label.CENTER));
carPanel.add(new Label("第二个界面",Label.CENTER));
carPanel.add(new Label("第三个界面",Label.CENTER));
nexButton =new Button("下一个界面");
preButton =new Button("上一个界面");
nexButton.addActionListener(this);
preButton.addActionListener(this);
contPanel.add(preButton);
contPanel.add(nexButton);
this.add(carPanel,BorderLayout.CENTER);
this.add(contPanel,BorderLayout.SOUTH);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if (e.getSource()==nexButton) {
cardLayout.next(carPanel);
}
if (e.getSource()==preButton) {
cardLayout.previous(carPanel);
}
}
}
public class Example2{
public static void main(String[]args) {
Cardlayout cardlayout = new Cardlayout();
}
}
谢谢做答