1,继承的定义

子类的成员中有一部分是子类自己申明定义的,另一部分是从他的父类继承的。子类继承父类的成员变量作为自己的一个成员变量,就好像他们是在子类中直接

申明一样,可以被子类中自己的任何实例方法操作。也就是说,一个子类继承的成员应当是这个类的完全意义的成员,如果子类中申明的实例方法不能操作父类

的某个成员变量,该成员变量就没有被子类继承,子类继承父类的方法作为子类中的方法,就像他们是在子类中直接声一样,可以被子类中自己声明的刃虎实例

2.子类父类在一个包中的情况

子类可以继承父类中的除了private的成员变量和方法,作为自己的成员变量和方法。继承的成员变量和方法的访问权限是不变的。

/test/src/com/b510/Parent.java

package com.b510;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class Parent {

private int numbera = 10;

protected int numberb = 20;

/**

* 友元函数sum()

*/

void sum() {

numberb = numbera + numberb;

System.out.println(numberb);

}

/**

* 获得numbera,此方法是private

*

* @return numbera

*/

private int getNumbera() {

System.out.println(numbera);

return numbera;

}

/**

* 此方法是public类型的

*/

public void print() {

System.out.println("numberb+numbera=" + (numberb + numbera));

}

/**

* 此方法是protected类型的

*/

protected void say() {

System.out.println("Hello,i'm parent class!");

}

}

/test/src/com/b510/ParentAndSubClass.java

package com.b510;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class ParentAndSubClass {

public static void main(String[] args) {

SubClass sub = new SubClass();

// 继承父类中的方法

sub.say();

sub.sum();

sub.print();

// 子类自己的方法

sub.proFun();

sub.youYuan();

}

}

/test/src/com/b510/SubClass.java

package com.b510;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class SubClass extends Parent {

/**

* 友元方法

*/

void youYuan() {

System.out.println("子类不能继承numbera,但能继承numberb=" + numberb);

System.out.println("这是子类中的友元方法");

}

/**

* private方法

*/

private void priFun() {

System.out.println("这是private方法");

}

/**

* protected方法

*/

protected void proFun() {

System.out.println("子类中可以继承numberb=" + numberb);

}

}

运行结果:

Hello,i'm parent class!

30

numberb+numbera=40

子类中可以继承numberb=30

子类不能继承numbera,但能继承numberb=30

这是子类中的友元方法

总结:子类和父类在同一个包中的时候,子类不能继承父类的含有private的变量和方法。

3.子类和父类不在同一个包的情况/test/src/com/Parent.java

package com;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class Parent {

private int numbera = 10;

protected int numberb = 20;

/**

* 友元函数sum()

*/

void sum() {

numberb = numbera + numberb;

System.out.println(numberb);

}

/**

* 获得numbera,此方法是private

*

* @return numbera

*/

private int getNumbera() {

System.out.println(numbera);

return numbera;

}

/**

* 此方法是public类型的

*/

public void print() {

System.out.println("numberb+numbera=" + (numberb + numbera));

}

/**

* 此方法是protected类型的

*/

protected void say() {

System.out.println("Hello,i'm parent class!");

}

}

/test/src/com/b510/ParentAndSubClass.java

package com.b510;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class ParentAndSubClass {

public static void main(String[] args) {

SubClass sub = new SubClass();

// 继承父类中的方法

sub.say();

sub.print();

// 子类自己的方法

sub.proFun();

sub.youYuan();

}

}

/test/src/com/b510/SubClass.java

package com.b510;

import com.Parent;

/**

* @author Hongten

*

* @time 2012-3-13 2012

*/

public class SubClass extends Parent {

/**

* 友元方法

*/

void youYuan() {

System.out.println("子类不能继承numbera,但能继承numberb=" + numberb);

System.out.println("这是子类中的友元方法");

}

/**

* private方法

*/

private void priFun() {

System.out.println("这是private方法");

}

/**

* protected方法

*/

protected void proFun() {

System.out.println("子类中可以继承numberb=" + numberb);

}

@Override

protected void say() {

System.out.println("这是重写父类的protected方法,say(),还可以得到numberb=" + numberb);

}

}

运行结果:

1 这是重写父类的protected方法,say(),还可以得到numberb=20

2 numberb+numbera=30

3 子类中可以继承numberb=20

4 子类不能继承numbera,但能继承numberb=20

5 这是子类中的友元方法

总结:子类和父类不在同一个包,子类可以继承protected,public变量和方法,继承的成员或方法的访问权限不变,但子类不能继承父类的友好(友元)变量和友好(友元)方法。

相关文章

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

java语言的继承性_基于java中子类的继承性的应用介绍相关推荐

  1. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  2. java 计算移动平均线_基于Java语言开发的个性化股票分析技术:移动平均线(MA)...

    基于Java语言开发的个性化股票分析技术:移动平均线(MA) 基于 Java 语言开发的个性化股票分析技术:移动平均线(MA)移动平均线(MA)是以道·琼斯的"平均成本概念"为理论 ...

  3. java语言变量分为_在Java语言中变量分为四种,分别是___________________________________________。_学小易找答案...

    [填空题]One day, at the registrar's office of a college, I noticed how parents are behaving with their ...

  4. java农产品查询系统_基于java的农产品销售系统的设计与实现论文.docx

    基于java的农产品销售系统的设计与实现论文.docx 分类号_______________ 密级________________ UDC _______________ 学号_毕业设计(论文)论文题 ...

  5. java语言程序设计答案_《java语言程序设计》练习题及答案

    <java语言程序设计>练习题及答案 JAVA 语言程序设计题及部分答案 一.单选题:(每题1分)下列各题A).B).C).D)四个选项中, 只有一个选项是正确的,请将正确选项的标记写在题 ...

  6. java语言 编译原理_【Java学习】深入分析Java的编译原理

    在<Java代码的编译与反编译>中,有过关于Java语言的编译和反编译的介绍.我们可以通过javac命令将Java程序的源代码编译成Java字节码,即我们常说的class文件.这是我们通常 ...

  7. java设计连连看心得_基于Java的连连看游戏的设计与实现

    ComputerKnowledgeand Technology 电脑知识与技术 软件设计开发本栏目责任编辑:谢媛媛 第7卷第35期 (2011年12月) 9 基于Java的连连看游戏的设计与实现 陈珊 ...

  8. java 写字板源代码_基于JAVA的模拟写字板的设计与实现(含录像)

    基于的模拟写字板的设计与实现(含录像)(任务书,开题报告,中期检查表,外文翻译,毕业论文18800字,程序代码,答辩PPT,答辩视频录像) 摘要 目前,很多新的技术领域都涉及到了Java语言,Java ...

  9. java网页作业提交_基于JAVA网上作业提交批改系统的设计(SQL)(含录像)

    基于JAVA网上作业提交批改系统的设计(SQL)(含录像)(毕业论文15000字,程序代码,SQLserver数据库) 摘  要 随着社会的进步,网络技术的发展为教育界提供了一片崭新的空间,传统的教学 ...

  10. java网上书店系统_基于JAVA/JSP的网上书店系统

    第一章 JAVA的网络功能与编程 1-1 JAVA语言简介 Java是一种简单易用.完全面向对象.具有平台无关性且安全可靠的主要面向Internet的开发工具.自从1995年正式问世以来,Java的快 ...

最新文章

  1. UIImagePickerController和UIAlertController结合使用
  2. 【MySQL】(4)操作数据表中的记录
  3. 【博客大赛】100行js代码实现网站在线用户数量统计 nodejs + socket.io方案
  4. [k8s]jenkins配合kubernetes插件实现k8s集群构建的持续集成
  5. SQL 语句 - Select(2): 指定表中的字段
  6. 编程到底难在哪里?—— 《人月神话》阅读分享
  7. Java | ProGuard——java代码混淆利器
  8. QTreeWidget 设置图片以及图片大小
  9. android手机大小,安卓手机内存多大才够用?如何选择内存的大小
  10. 去掉input自动填充的黄色背景
  11. 顶刊实证复现:排污权交易机制是否提高了企业全要素生产率 (思路梳理+全数据源+python代码)
  12. 2006高端IT技术图书点评(首发《中华读书报》)
  13. RationalDMIS 7.1 DMIS基本语句
  14. spark dataframe 一列分隔多列,一列分隔多行(scala)
  15. 螺旋天线有方向性吗_螺旋天线设计
  16. php 和mysql中文乱码问题,常见php与mysql中文乱码问题解决办法
  17. 基于AT89C52数码管循环移位显示
  18. html中输出语句怎么写,javascript输出语句有哪些
  19. mac苹果电脑m1 mbp 缺电自动关机后,日期时间无法同步;自动同步日期和时间错误,到一个固定的日期时间
  20. 计算机专业英语第3章,计算机专业英语:第3章.ppt

热门文章

  1. spring AOP @Aspect,@pointcut的理解
  2. spring cloud 学习笔记(1)
  3. 像在K8S集群中一样运行本地程序
  4. 全明星投资融资5亿美元,曾下注亏损百亿的滴滴,及商汤、陆金所等独角兽...
  5. IQ推理:P先生和Q先生
  6. mysql 存储过程 获取错误信息 继续执行
  7. 7个碎片的excel重组实验
  8. 刘宇凡:京东上市突显的致命隐患
  9. .NET:用T4消除代码重复,对了,也错了
  10. DAX CRM 模块中需要注意的地方