`
ronaldoLY
  • 浏览: 42124 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

java技术新手小白课后理解NO1

阅读更多
1.什么是继承?为什么需要继承?如何继承?
继承就是2个类之间有包含关系时,一个类(子类)直接将另一个类(父类)中的属性和方法“继承”过来使用。
为什么需要继承:1.继承表示了2个类之间的关系
            2.可以减少子类中的代码数量,减少工作量
如何继承:public class 子类  extends 父类
2.自动转型与强制转型的理解
自动转型
/**
*创建一个球员类(父类)
*/
public class Player{
//创建属性,名字  
   public String name;
//创建方法,踢球
   public void paly(){
    System.out.println(name+"在踢球");
   }
//创建一个设定名字的方法
public void setName(String a){
   name=a;
}  
}
/**
*创建一个中国球员类(子类)
*/
public class CHNPlayer extends Player{
//创建一个子类方法
//当子类中方法名与父类中方法名相同时,在后来的主类中调用时会发生重写
public void paly(){
   System.out.println(name+"在瞎踢球");
}
//在子类中创建一个新的方法
Public void relax(){
  System.out.println(name+"在娱乐");
}
 
}
//创建一个主类
public class Main(){
public Static void main(String[] args){


//创建一个球员对象
Player PL1=new Player();
PL1.setName("hennry");
PL1.paly();


//创建一个中国球员对象
CHNPlayer PL2=new CHNPlayer();
PL2.setName("李毅");
PL2.paly();
//由于子类中也有play的方法,所以此时就出现了overwrite(重写),对象调用的是子类中的play方法
PL2.relax;

//创建一个PL3对象,使它自动转型
Player PL3=new CHNPlayer();
//此时,子类的对象自动转型为父类对象
PL3.setName("大帝");
PL3.play();
//虽然PL3被自动转型为父类对象,但是他调用的play方法仍然是子类中的。
PL3.relax();
//上面这个就会报错,因为PL3已经被自动转型为父类类型,而父类类型中没有relax,所以会报错


//创建一个对象,让它强制转型
//强制转型:只有当这个对象在之前进行过自动转型,才可以进行强制转型
CHNPlayer PL4= (CHNPlayer)PL3;
PL4.play();
//paly调用的还是子类的
PL4.relax();
//此时relax方法就可以调用了。因为已经将PL3强制转为子类类型了。
}
}
/**
  *在上述的代码中,如PL1.play();和PL2.paly();他们的对象类型都是Player类型。方法都是play
  *但是运行的结果却是“hennry在踢球”和“李毅在瞎踢球”
  *这就是多态,对象的类型和调用的方法都一样,但是得到的结果不同
  */
 
 
 
3.方法的重写和重载的理解
重写:是出现在继承中的概念, 只有出现了子类父类时,才会有重写的概念,重写就是子类在继承父类的方法时,
有时候父类的方法不够具体,无法完全适用到子类,所以需要在子类中重新写一个跟父类方法名一样的方法 ,当创建一个
子类对象时,调用这个方法时,就会调用子类中的方法,而不是父类中的方法,这种情况就叫作重写。

重载:是在一个类中,可以许多方法名相同,但是参数个数或者类型不同的方法,在使用方法的时候,会根据参数的情况
来确定到底使用哪一个方法,这叫重载。
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics