继承

1、类分为3种:普通类;抽象类;接口


普通类:1)方法只能有普通方法和构造方法
     2)能创建对象

        public class UnStudent{

//创建对象,构建对象时候自动调用
public UnStudent(){}

//普通方法
public void study(){}

  }

抽象类:1)方法可以有普通方法、构造方法和抽象方法
     2)不能创建对象

public abstract class  Student{

//普通方法
public void study(){}

//抽象方法
public abstract void play();

}

接口: 1)方法只能有抽象方法
   2)不能创建对象

public interface people{

//抽象方法
public abstract void play();

}

2、继承 父类和子类

作用:避免代码的冗余
继承: 子类通过继承关系获取父类的所有非私有权限的属性和方法
  单继承关系
关键字:extends、implements

普通类继承普通类 extends    
普通类继承抽象  extends     必须同时重写抽象类中的所有抽象方法
普通类继承接口  implements  必须同时重写抽象类中的所有抽象方法 可以同时继承(实现)多个
抽象类继承接口   可以不用同时重写所有接口抽象方法   可以同时继承多个


类接口抽象类体现模型:程序员(动手不动口)->小组长(动口也动手)->项目经理(动口不动手)

父类:

public class People {
public void study(){
System.out.println("人类在学习");
}
public void play(){
System.out.println("人类在玩");
}
}

子类

public class Student extends People{


public void study() {
System.out.println("学生在认真的学习");

}
}

Main  函数中出现的多态和自动转型

public class Test {
public static void main(String[] args) {
People peo = new Student();//自动转型,Student 是Peoplede 的子类,自动转换为People 
Student stu = new Student();
People peo1 = new People();
peo.study(); 
stu.study(); 
peo1.study();//1、2句结果相同,表现出多态性
//类名  对象名 = new 类名();
}
}


今天重点在于区分3种类的定义及使用方法、相互继承的关系


1.构造函数:

       访问权限  类名(){}
      作用:用来构造对象
      特征:创建对象时候执行
      构造器有返回值,返回的是对象在内存中的地址


例    public class DrawListener implements MouseListener{
public int x1,y1,x2,y2;

public Graphics g1;

public DrawListener(){


}//这就是一个构造函数

public DrawListener(Graphics g2){
g1 = g2;
}//这是另一个构造函数,如删除上一个,则替换默认构造函数

}

2.方法重载
方法重载:1.在一个类中,
 2.方法名相同
 3.参数类型、参数个数、参数顺序不一样的方法互为重载方法
 
                   构造方法重载:如果重载了构造函数,则类中默认的构造函数没有了,如果还需要用到无参的,则必须显性定义在类中

参照上“例”。

3.界面代码重构重写


引用传递,构造方法传参数


this代表一个对象,当前类的对象

this 关键字是类内部当中对自己的一个引用,方便访问类中方法和自己的属性 

public class DrawBoard extends JFrame{

        //DrawBoard继承了JFrame 无需再重新创建: JFrame  jf = new JFrame();
public static void main(String[] args) {
DrawBoard db = new DrawBoard();
db.initFrame();
}
public void initFrame(){    

//initFrame  被db引用
this.setSize(600, 600);  //this 替换
setDefaultCloseOperation(3);
setVisible(true);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值