关键词:
package extend; /*面向对象-继承: * 多个类的共同成员变量和成员方法。抽取到另一个类中(父类),我们多个类就可以访问到父类的成员了 * */ class Game{ String name; double vesion;//版本号 String agent;//代理商 public void start() { System.out.println("游戏启动"); } public void stop() { System.out.println("游戏关闭"); } } class CF extends Game{ } class LOL extends Game { } public class extend { public static void main(String[] args) { CF cf=new CF(); cf.start(); LOL lol=new LOL(); lol.start(); } }
初步的认识后,现在来看下继承在java中的特点
package extend; class update{ public void update() { System.out.println("更新了"); } } class QQspeedandchuangqi extends update{ public void start() { System.out.println("game start....."); } public void stop() { System.out.println("game stop....."); } } class QQspeed extends QQspeedandchuangqi{ } class Chaungqi extends QQspeedandchuangqi{ } public class extends_java_special { public static void main(String[] args) { QQspeed qqspeed=new QQspeed(); Chaungqi chaungqi=new Chaungqi(); qqspeed.update(); qqspeed.start(); qqspeed.stop(); } }
在以上代码中我们可以发现,java中的继承,不能实现一对多个父类,而可以多层次的继承。
继承中的成员变量,局部变量的特点:
package extend; class parents{ private String name="我是parents的成员变量"; } class Father extends parents{ public void speak() { System.out.println("我叫"+name); } } public class extends_member { public static void main(String[] args) { Father father=new Father(); father.speak(); } } /*在上述代码中 子类(Father类)继承了parents(父类),父类中有私有变量name,但是子类访问不了父类的私有变量,所以那么会报错*/
package extend; class parents{ String name="我是parents的成员变量"; } class Father extends parents{ String name="我是Father的成员变量"; public void speak() { System.out.println("我叫"+name); } } public class extends_member { public static void main(String[] args) { Father father=new Father(); father.speak(); } } /*在上述代码中 子类(Father类)继承了parents(父类),父类中有成员变量name,但是子类也有成员变量name, * 此时的打印输出为:我叫我是Father的成员变量 * 所以在同一个名称的成员变量下,对象访问的应该是子类的成员变量 */
package extend; class parents{ } class Father extends parents{ String name="我是Father的成员变量"; public void speak() { String name="我是Father的局部变量"; System.out.println(name); } } public class extends_member { public static void main(String[] args) { Father father=new Father(); father.speak(); } } /*在上述代码中 子类(Father类)继承了parents(父类),父类中有成员变量name1,但是子类也有成员变量name2, * 此时的打印输出为:我叫我是Father的局部变量 * 所以在有局部变量的时候就用局部变量,遵循就近原则 */
总结下继承中的成员变量,局部变量的特点:
1.子类(Father类)继承了parents(父类),父类中有私有变量name,但是子类访问不了父类的私有变量。
2.子父类中有相同名称成员变量,则依照就近原则,用子类的成员变量
3.子父类中有不通的名称成员变量,则使用父类中的成员变量
4.如果有局部变量就是用局部变量
super:可以访问父类的成员
this:引用当前对象
接下来是继承中的成员方法特点:
子类没有方法:
package extend; class parents{ public void speak() { System.out.println("父母"); } } class Father extends parents{ } public class extends_member { public static void main(String[] args) { Father father=new Father(); father.speak(); } } 子类有同名方法 package extend; class parents{ public void speak() { System.out.println("父母"); } } class Father extends parents{ public void speak() { System.out.println("爸爸"); } } public class extends_member { public static void main(String[] args) { Father father=new Father(); father.speak(); } } /*如果子类中有这个方法,那么会进行方法的重写,覆盖父类方法,因为父类的方法不一定子类都具备。 如果子类没有方法,那么就会使用父类的方法。*/
06java基础面向对象-继承/多态
一、继承1、概念子类的共性重用现有类并在此基础上进行扩展publicclass子类extends父类{}2、继承中的成员访问成员变量成员方法局部->本类中成员变量->父类中非私有成员变量本类中方法->父类中非私有成员方法->object基类... 查看详情
extends继承
继承的作用:子类可以直接拥有父类成员;其中,私有成员和构造函数不参与继承; java中类继承的特点:只支持单一继承和多重继承,不支持多继承(一个类不能同时继承多个类) 继承中成员变量的特点:子类中可以... 查看详情
基础知识——java类的继承重载与重写
继承一、extends关键字来表示继承关系。当创建一个类时,总是在继承,如果没有明确指出要继承的类,就总是隐式地从根类Object进行继承;二、子类继承父类的成员变量 1)能够继承父类的public和protected成员变量;不能够继... 查看详情
java基础---面向对象
一、说到java的面向对象,会有几个耳熟能详的概念。继承、封装、多态。这里简单描述一下:继承:通过extends关键字修饰,表示两个类之间的关系为父子类关系,子类具有父类的属性及方法。可以重写; 在继... 查看详情
20165316第四周学习总结
20165316第四周学习总结教材学习内容总结第五章使用关键词extends定义一个子类一个类只能有一个父类,但是可以有若干个子类。子类继承了父类非private的变量和方法。(protected变量和方法只有同一包中才能继承)子类继承的方... 查看详情
20165323第4周学习总结
教材学习内容总结第五章1、由继承得到的类称为子类,被继承的类称为父类2、在类的声明中,通过使用关键字extends来定义一个类的子类,格式为:class子类名extends父类名{...}3、每个类有且仅有一个父类,一个类可以有多个或者... 查看详情
java第四周学习总结(代码片段)
201753082018-2019-2《Java程序设计》第四周学习总结教材学习内容总结继承是一种由已有的类创建新类的机制。Java不支持多重继承,子类只能有一个父类。使用extends来定义一个类的子类,如:classPeople.....classChinesePeopleextendsPeople....Ch... 查看详情
《java程序设计》第四周学习总结(代码片段)
学号2016-2017-2《Java程序设计》第四周学习总结教材学习内容总结1.子类与父类:由继承得到的类称为子类,被继承的类称为父类2.在类的声明过程中,通常用关键字extend来定义一个类的子类,如class子类名extend父类名3.如果子类和... 查看详情
java基础类-----继承
一、基本知识1、在Java语言中,实现类的继承使用extends关键字格式如下:[public]classSubClassextendsSuperClass{ //类体的定义}2、被继承的类称为父类或超类或基类,而继承得到的类称为子类或派生类。3、子类继承父类的状态(属性... 查看详情
java特性之继承
...代码的复用,节约开发时间。在java中继承是指在父类的基础上扩展功能,继承中分为子类和父类。类有两种重要成员:成员变量和方法。java中子类通过关键字extends可以获得父类的成员变量和方法。子类的成员中可以有自己声明... 查看详情
java基础学习(代码片段)
Java基础学习一、面向对象进阶版1.1静态变量static1.2static内存图1.3static的注意事项1.4重新认识main方法1.5封装1.6继承1.7继承的特点1.8子类继承父类哪些内容继承的内存图1.9继承中成员变量的访问特点1.10成员方法的访问特点方法重写... 查看详情
第四周学习总结
一、教材内容总结1、由继承得到是子类,被继承的是父类(超类),Java不支持多重继承,子类只能有一个父类。声明子类class子类名extends父类名Object类是所有类的祖先,若无extends关键字,默认为Object类的子类。2、子类继承的... 查看详情
20175314《java程序设计》第四周学习总结
20175314《Java程序设计》第四周学习总结教材学习内容总结每个子类只能有一个父类,而一个父类可以有多个子类。可以使用关键字extends来定义一个类的子类:class子类名extends父类名。不加extends关键字时,默认为Object类,Object类... 查看详情
201752262018-2019-2《java程序设计》第四周学习总结(代码片段)
201752262018-2019-2《Java程序设计》第四周学习总结教材学习内容总结子类与父类格式class子类名extends父类名Object类是所有类的祖先类子类的继承性在同一包中子类会继承非private的成员和方法不在同一包中只会继承protected和public的成... 查看详情
day08java基础学习笔记
继承extends(也叫扩展)多个类中存在相同的属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。通过extends关键字可以实现类的继承class子类名extends父类名{}继承的案... 查看详情
java学习与应用--面向对象
继承关系java的为单继承、多级继承。父类有直接父类和间接父类。最上层为Object类。类的继承使用extends关键字。publicclassChildextendsParent{}子类继承了父类的方法,重名变量和方法使用就近原则,方向为向父类方向查找。super关键... 查看详情
20165303第四周学习总结
基本知识点java中类的继承知识点类的继承知识点:(1)java不支持多重继承,也就是说子类至多只能有一个父类(2)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法(3)子类中定义的成员变量... 查看详情
no_16_0229java基础学习第八天
文档版本开发工具测试平台工程名字日期作者备注V1.02016.02.29lutianfeinone工具类中使用静态帮助文档的制作如何使用帮助文档Math类学习代码块继承继承概述继承的好处Java中继承的特点Java中继承的注意事项什么时候使用继承呢?继... 查看详情