java java面向对象-子类继承父类的哪些成员

20180312 java java面向对象-子类继承父类的哪些成员

先写父类还是先写子类?
答:不一定,一般地,我们在实际开发工程时,先编写多个自定义的类,写完之后,发现多个类之间存在共同的代码,此时可以抽出一个父类;我们以后做开发,都是基于框架/组件来做的,我们是在别人的基础上继续做开发,即我们定义的类会继承于框架中/组件中提供的父类。


子类继承自父类后,子类可以拥有父类的某一些状态和行为,即子类复用了父类的某些功能和状态。可以通过访问修饰符判断子类继承了父类的哪些功能和状态:
1、若父类中的成员(字段或方法)是以public修饰的,则子类无条件全继承;
2、若父类中的成员(字段或方法)是以protected修饰的,则子类也全继承,即使子类与父类不在同一个包中;
3、若父类和子类在同一个包中,此时子类可以继承父类中缺省修饰的成员。
eg:
//普通的人
class Person extends Object{
  String name;
  int age;
  publi void sleep(){   }



//学生
class Student extends Person{
  String sn;//学号
}


//引出继承关系
public class ExtendsDemo{
  public static void main(String[] args){
    Student s = new Student();
    System.out.println(s.sn);
    System.out.println(s.name);
    s.sleep();
    
  }
}


4、若父类中的成员(字段或方法)是以private修饰的,则子类无法继承父类的任何成员,因为private修饰的成员只能在本类中访问;      
5、父类中的构造器,子类也无法继承,因为构造器必须和当前的类名相同。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第四章 面向对象的概念和 Java 实现-2 回顾 类是具有相同属性和行为的一组对象的 集合 , 对象是类的实例 封装是隐藏对象实现细节的过程,以便不让用户看到实现的细节 类可用Class 来定义,类的变量和方法可被该类的实例访问, 圆点符号用于访问对象的成员,构造函数在创建对象时初始化对象 包可用package 来申明 ,可用import 来导入包 目标 理解继承及其特点 运用JAVA程序实现继承 理解多态及其特点设计 运用JAVA程序实现多态 掌握访问修饰符和方法修饰符 继承 继承的特点 继承的优点 继承JAVA实现 子类构造方法 2-1 子类构造方法 2-2 调用父类构造方法的语法为: super() 或 super(参数列表) ; super () 方法始终指向调用类的父类 调用父类构造方法 演示:示例 3 多态性 2-1 多态性是指¡°多种形式¡± 它使用不同的实例而执行不同操作 多态包括方法重写和方法重载 多态性 2-2 方法重载 2-1 方法重载 2-2 演示:示例 4 方法重写 2-1 方法重写 2-2 访问修饰符 3-1 信息隐藏是 OOP 最重要的功能之一,也是使用访问修饰符的原因 信息隐藏的原因包括: 对任何实现细节所作的更改不会影响使用该类的代码 防止用户意外删除数据 此类易于使用 访问修饰符 3-2 访问修饰符 3-3 访问修饰符可访问性 方法修饰符 static 修饰符 3-1 static修饰符修饰的方法叫静态方法 目的 使该方法独立于类的实例,使用类去访问,而不是类实例,所以也叫类方法 static 修饰符 3-2 调用静态方法的语法为: classname.methodname( ); static 修饰符 3-3 演示:示例 6 final 修饰符 abstract 修饰符 3-1 由abstract修饰的方法叫抽象方法;由abstract修饰的类叫抽象类 抽象方法必须声明在抽象类中 抽象方法语法: abstract type method_name(parameter_list); 声明抽象类语法: abstract class{…… } 使用:父类中的某些抽象不包含任何逻辑,并需要在子类中重写,子类提供这种抽象方 法的实现细节 abstract 修饰符 3-2 抽象类可以具有指向子类对象的对象引用 abstract 修饰符 3-3 演示:示例 7 接口 接口就是某个事物对外提供的一些功能的申明 可以利用接口实现多态,同时接口也弥补了Java单一继承的弱点 使用interface关键字定义接口 一般使用接口声明方法或常量,接口中的方法只能是声明,不能是具体的实现 创建接口的步骤 2-1 // 定义方法的接口 public interface myinterface { public void add(int x, int y); public void volume(int x,int y, int z); } // 定义程序使用的常量的接口 public interface myconstants { public static final double price = 1450.00; public static final int counter = 5; } 创建接口的步骤 2-2 接口使用示例 总结 封装、继承和多态是面向对象的主要特征 继承可提高代码的重用性,使用extends关键字来实现。除了构造方法之外,父类的所有 方法和属性都被子类的对象继承 多态性是不同的实例对象以不同的方式对相同的信息作出不同的表现 访问修饰符用于确定访问类成员的方式 Java 常用修饰符有 static、final、abstract 接口是Java编程一项重要的技术,同过它可以实现多态,同时它也弥补了Java单一继承 的不足 . . ----------------------- 《java面向对象程序设计-继承和多态》教案全文共5页,当前为第1页。 《java面向对象程序设计-继承和多态》教案全文共5页,当前为第2页。 《java面向对象程序设计-继承和多态》教案全文共5页,当前为第3页。 《java面向对象程序设计-继承和多态》教案全文共5页,当前为第4页。 《java面向对象程序设计-继承和多态》教案全文共5页,当前为第5页。
Java作为一种面向对象的编程语言,具有封装、继承和多态这三个重要概念。 首先,封装是指将数据和对数据的操作封装在一个类中,隐藏了实现的细节。通过封装,我们可以将数据的访问权限进行控制,从而保证数据的安全性和完整性。通过提供公共方法,我们可以控制对象对数据的访问方式,使得使用者只能通过指定的方法来访问和修改数据,避免了不恰当的操作。 其次,继承是指子类可以继承父类的属性和方法,可以实现代码的复用。通过继承,我们可以建立类之间的层次关系,并且在子类中可以重写父类的方法,实现对方法的扩展和改进。继承还可以提高代码的可维护性和可扩展性,当需要修改或新增功能时,只需要在相应的子类中进行修改或扩展,而不需要修改所有的类。 最后,多态是指同一个方法可以根据不同的对象产生不同的行为。多态性可以提高代码的灵活性和可扩展性,使代码更易于理解和维护。通过多态,我们可以对不同对象使用相同的方法和接口,使得代码的逻辑更清晰,减少条件判断和重复的代码。 综上所述,封装、继承和多态是Java面向对象编程中的重要概念。封装可以保证数据的安全性和完整性,继承可以实现代码的复用和功能的扩展,多态可以提高代码的灵活性和可扩展性。掌握这三个概念,可以帮助我们更好地设计和实现面向对象的程序,提高代码的质量和效率。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值