JAVA学习总结5

继承使用原则:
  • 子类可以继承父类属性和方法,并能扩展属性和方法。
  • 观察要使用的类,确定之间共同、特有的的特征和行为,将这些共性数据迁移到父类里。便于子类中进行方法和属性的重用。
  • 对于不同的特征和行为,在子类里可以重新定义。

单继承和多继承
  • 某些语言例如c++允许子类有多个父类。
  • Java中,一个类只能有一个父类,

所有类的根类都是Object
  • 都是直接,或间接继承Object
  • public final Class gerClass();
  • public int hashCode();


通过GUI练习一下代码,熟悉继承方法
JAVA中使用Awt和Swing两个包
  • awt:是使用操作系统本身提供的组件风格来构件JAVA的gui组件,所以在跨平台时,显示风格不一致。
  • swing:弥补了awt类包的不足,有自己的显示风格,这样在跨平台时,显示风格会保持一致。

GUI有一个先进先出原则,最先加入的窗体的组件在最上层,最后加入窗体的组件在最下层。所以背景图片一定要放在最后面


public Class MyJFrame extends JFrame{   }//思想, 继承 JFrame,然后再添加其他组件,实际是对父类的扩展的过程!
抽象:   将像的东西抽出来,并在方法(或者构造方法里面写死),将不相同的地方抽出来,作为引参来实现方法重用

比如


添加自定义窗体

     this.setTitle("我的窗体");
     //设置窗体的布局管理器,null布局的含义是,使用组件的大小和位置定位组件
     this.setLayout(null);
     this.setSize(1024, 576);
     this.setVisible(true);//这句代码会让代码之前的所有组件可见。
     this.setDefaultCloseOperation(3);关闭
     this.setLocationRelativeTo(null);屏幕居中

添加标签组件
//标签组件
      JLabel j1 =new JLabel("姓名");
      j1.setFont(getFont());
      //设置标签的位置和大小
      j1.setBounds(60,80,100,40);
      //将标签加入窗体
      this.add(j1);

文本框组件
//文本框组件
           JTextField jtxt = new JTextField();
           jtxt.setBounds(140, 80, 120, 40);
           this.add(jtxt);

设置按钮
//设置按钮
           JButton button = new JButton("确定");
           button.setBounds(200, 350, 80, 20);
           this.add(button);

单选框,互斥单选框
           //单选框
           JRadioButton radio1 =new JRadioButton("男");
           radio1.setBounds(300, 50, 80, 20);
           this.add(radio1);

           JRadioButton radio2 =new JRadioButton("女");
           radio2.setBounds(380, 50, 80, 20);
           this.add(radio2);
          
           //完成单选框互斥
           ButtonGroup bg = new ButtonGroup();
           bg.add(radio1);
           bg.add(radio2);

复选框
           //创建复选框
           JCheckBox jc = new JCheckBox("记住密码");
           jc.setBounds(300, 100, 80, 20);
           this.add(jc);


          JLabel imgLabel = new JLabel();
          //得到图像
          Image img =new ImageIcon("img/3.jpg").getImage();
          img = img.getScaledInstance(1024, 576, 1);//裁剪图片

          //设置标签的图片
          imgLabel.setIcon(new ImageIcon(img));
          imgLabel.setBounds(0, 0, 1024, 576);//设置位置偏移
          this.add(imgLabel);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值