`

Java继承中变量和方法在各访问权限下的情况

    博客分类:
  • Java
阅读更多

下面程序的可读性不怎么好,可以说比较差吧,就凑合着看吧,就为了理解一下。

 

package cn.lifx.test;

public class SubParTest 
{
	public static void main(String[] args)
	{
		ParentClass pc = new ParentClass();
		System.out.println(pc.publicValue);
		System.out.println(pc.friendlyValue);
		System.out.println(pc.protectedValue);
		System.out.println(pc.getPrivaeValue());
		pc.publicFun();
		pc.friendlyFun();
		pc.protectedFun();
		
		System.out.println();
		
		ParentClass psc = new SubClass();
		System.out.println(psc.publicValue);
		System.out.println(psc.friendlyValue);
		System.out.println(psc.protectedValue);
		System.out.println(psc.getPrivaeValue());
		psc.publicFun();
		psc.friendlyFun();
		psc.protectedFun();
		
		System.out.println();
		
		SubClass sc = new SubClass();
		System.out.println(sc.publicValue);
		System.out.println(sc.friendlyValue);
		System.out.println(sc.protectedValue);
		System.out.println(sc.getPrivaeValue());
		sc.publicFun();
		sc.friendlyFun();
		sc.protectedFun();
	}
}

class SubClass extends ParentClass
{
	public String publicValue = "sub_public_field";
	String friendlyValue = "sub_friendly_field";
	protected String protectedValue = "sub_protected_field";
	private String privateValue = "sub_private_field";
	
	public void publicFun()
	{
		System.out.println("sub_public_function()");
	}
	
	void friendlyFun()
	{
		System.out.println("sub_friendly_function()");
	}
	
	protected void protectedFun()
	{
		System.out.println("sub_protected_function()");
	}
	
	public String getPrivaeValue()
	{
		return this.privateValue;
	}
}

class ParentClass
{
	public String publicValue = "parent_public_field";
	String friendlyValue = "parent_friendly_field";
	protected String protectedValue = "parent_protected_field";
	private String privateValue = "parent_private_field";
	
	public void publicFun()
	{
		System.out.println("parent_public_function()");
	}
	
	void friendlyFun()
	{
		System.out.println("parent_friendly_function()");
	}
	
	protected void protectedFun()
	{
		System.out.println("parent_protected_function()");
	}

	public String getPrivaeValue()
	{
		return this.privateValue;
	}
}

 

 

输出为:

 

parent_public_field
parent_friendly_field
parent_protected_field
parent_private_field
parent_public_function()
parent_friendly_function()
parent_protected_function()

parent_public_field
parent_friendly_field
parent_protected_field
sub_private_field
sub_public_function()
sub_friendly_function()
sub_protected_function()

sub_public_field
sub_friendly_field
sub_protected_field
sub_private_field
sub_public_function()
sub_friendly_function()
sub_protected_function()

 

0
0
分享到:
评论

相关推荐

    继承和接口和java访问权限修饰符总结.doc

    访问权限修饰符是指在 Java 中用来控制类、方法和变量的访问权限的关键字。常见的访问权限修饰符有:public、private、protected 和 default。 五、static 修饰符 static 修饰符是指在 Java 中用来修饰类、方法和...

    java中的继承(子类调用父类构造方法还不懂).doc

    由于 Java 语言的多态性使得可以用一个子类的实例赋值给一个父类的变量,而在一些情况下需要判断变量到底是一个什么类型的对象。 在 Java 中,数组也可以是同类收集(homogenous collections)或异类收集...

    java中继承的使用案例

    (2)学生类Student继承Person,增加了学号信息,有两个构造方法Student()和Student(姓名,性别,年龄,学号),调用父类Person的构造方法对父类部分进行构造,在Student()中,默认学号为空字符串,在Student...

    Java实验2 类的封装性和继承性设计实验.doc

    为了实现封装性,Java 提供了访问修饰符(public、private、protected)来控制成员变量和成员方法的访问权限。 在本实验中,我们将设计一个 Student 类,并对其进行测试。Student 类中包含两个成员变量:姓名和成绩...

    JAVA封装继承与多态PPT教案学习.pptx

    * 设置对象中的成员变量和方法的访问权限(public,private,protected,缺省) * 提供一个统一供其他类引用的访问接口,如一些 public 方法 * 其他对象不能直接修改本对象所拥有的私有属性和私有方法 * 包:类空间的...

    java面向对象教程PPT教案学习.pptx

    在Java中,成员变量和方法可以用关键字private、protected和public来说明访问权限。private修饰的成员变量和方法被称为私有变量和私有方法,只有在本类中创建该类的对象时,这个对象才能访问自己的私有成员变量和类...

    Java期末考试习题库(选择题+填空题+改错题学生).pdf

    private 访问控制符可以用于限制成员变量的访问权限,只有该类自身可以访问和修改私有成员变量。 12. 数组 数组是一种数据结构,用于存储多个元素。例如,int[] x = new int[10]; 创建一个长度为 10 的整数数组。 ...

    java中不同包之间的调用.docx

    Java 中的访问控制符是指在 Java 语言中,控制类、方法、变量的访问权限的关键字。这些关键字包括 public、private、protected、default 等。它们决定了类、方法、变量的可访问性和可继承性。 在 Java 中,访问控制...

    Java子类的继承性

    如果子类和父类在同一个包中,那么子类自然地继承了其父类中不是private的成员变量作为自己的成员变量,并且也自然地继承了父类中不是private的方法作为自己的方法。继承的成员变量以及方法的访问权限保持不变。  ...

    java中public、protected、默认、private关键字

    Java 中的访问修饰符是 Java 语言中一种基本概念,用于控制类、方法、变量、构造方法等成员的访问权限。 Java 中有四种访问修饰符:public、protected、默认(default)和 private。这四种修饰符的作用域从大到小...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    用,变量和方法可以通过设定一定的访问权限(见下面的例子)来允许或禁止其它对象对它的 访问。 我们先定义一个类 Point。 例子: class Point{ int x,y; String name = "a point"; Point(){ x = 0; y = 0; } Point( ...

    JAVA面向对象编程.pdf

    在 Java 中,访问控制是一种机制,用于控制成员变量和成员方法的访问权限。例如,在实验题 3 中,我们使用 private 关键字来声明 data 和 str 成员变量,使其只能被 MyProgram 类内部访问。 9. 字符串转换 在 Java...

    华为java技术笔试题(2016)含答案

    本文将对华为 Java 技术笔试题(2016)中的内容进行总结和分析,涵盖了 Java 基础、String、StringBuffer 与 StringBuilder 的区别、静态变量和实例变量的区别、继承和接口的区别、HashMap 和 Hashtable 的区别、...

    Java开发技术大全(500个源代码).

    showMain.java 演示main方法访问本类成员 showMethod.java 演示如何定义一个方法体 showReturn_1.java return语句示例1 showReturn_2.java return语句示例2 showStaicVar.java 演示静态变量的使用 staticBlock...

    Java抽象类接口与多态PPT教案学习.pptx

    继承是Java中的一个重要概念,指的是一个类继承另一个类的所有成员变量和方法。继承的主要特点是: * 子类可以继承父类的所有成员变量和方法。 * 子类可以重写父类的方法。 * 子类可以继承父类的访问权限。 继承的...

    java视频教程(52课)上 基本概念 面向对象基础 语法 接口 包和访问权限

    01_Java考古学.mp4 02_Java创世纪.mp4 03_Java基本概念(一).mp4 04_Java的变量.mp4 ...25_包和访问权限(一).mp4 26_包和访问权限(二).mp4 27_包和访问权限(三).mp4 28_接口的基本语法.mp4 29_接口的应用.mp4

    软通动力Java笔试题.pdf

    这些访问权限控制可以控制类、方法和变量的访问范围。 集合框架 Java集合框架中,常用的两个List的非同步实现类是ArrayList和LinkedList。其中,ArrayList基于数组实现,查询效率较高,增删效率较低;LinkedList...

    Java100个面试题.doc

    “static”关键字表明一个成员变量或者是成员方法可以在没有所属的类的实例变量的情况下被访问。Java中static方法不能被覆盖,因为方法覆盖是基于运行时动态绑定的,而static方法是编译时静态绑定的。 4. 是否可以...

    JAVA类与对象及数组习题[借鉴].pdf

    知识点:在 Java 中,成员变量可以被同一类中的其他方法访问。 11. 数组初始化:正确答案是 A.array2 = array1。 知识点:在 Java 中,数组可以初始化为 null 或一个新的数组,但不能将一个数组赋值给另一个数组...

    浙工商java试卷

    在 Java 中,成员变量或方法的访问控制权限可以使用访问控制符来控制。默认的访问控制符为包私有(default),即只能被与该类在同一个包里的类的成员方法访问。 6. 方法返回类型 在 Java 中,方法的返回类型可以是...

Global site tag (gtag.js) - Google Analytics