java构造方法的默认类型研究
来源:互联网 发布:淘宝卖家感谢信有创意 编辑:程序博客网 时间:2024/05/25 23:59
方法可以用public,private,protected关键字修饰,构造方法也是如此。
但构造方法也可以什么也不用,那这种情况下其默认的修饰类型是什么呢?
以下作为研究代码:
注意这几个类所在的包的关系.
package com.java.one;/** * 构造方法的类型可以是public,private,protected,也可以不写, * 那不写的时候其默认类型到底是哪个呢? * 本例子为了研究构造方法的默认类型是什么 * @author Administrator * */public class OuterClass {//1.首先我们用这个public构造方法,r然后在其他类中使用它声明对象。public OuterClass(){}//2.我们把上面的构造方法注释掉,换用下面的//OuterClass(){}//这时发现OtherPacConstruc类中的OuterClass two=new OuterClass();报错,//所以可以推断:不带关键字修饰的构造方法默认就是protected !//3.我们再把上面两个构造方法都注释掉,这时发现没有报错//所以可以得出结论:不写构造方法的时候,编译器默认//创建一个public类型的,不带任何参数的构造方法!public void methodOfPublic(){System.out.println("public 方法。");}private void methodOfPrivate(){System.out.println("private 方法。");}protected void methodOfProtected(){System.out.println("protected 方法。");}}
package com.java.one;public class SamePacConstruc {/** * @param args */public static void main(String[] args) {OuterClass one=new OuterClass();//在同一包下,可以调用public,protected方法,但不能调private方法。one.methodOfPublic();one.methodOfProtected();}}
package com.java.two;import com.java.one.OuterClass;public class OtherPacConstruc {/** * @param args */public static void main(String[] args) {OuterClass two=new OuterClass();two.methodOfPublic();//不在同一包下,只能调用public方法。}}
所以可以推断:不带关键字修饰的构造方法默认就是protected !
- java构造方法的默认类型研究
- Java默认构造方法
- Java 8 接口里的默认方法特性研究
- java中类的构造方法与默认构造方法的关系
- 在Java中,采用类的默认构造函数构造对象的方法!
- Java接口中的变量和方法默认的类型<转>
- 枚举类型的构造方法
- 如果一个类定义了一个或多个构造方法,那么java不会提供默认的构造方法
- 默认构造方法浅析
- Java的构造方法
- java的构造方法
- java的构造方法!
- java的构造方法
- Java的构造方法
- Java的构造方法
- Java的构造方法
- Java的构造方法
- java的构造方法
- CGAL::Manifold_with_boundary_tag
- poj1226
- 为什么用ls和du显示出来的文件大小有差别?
- java线程池
- 求两个数组的交集
- java构造方法的默认类型研究
- mysql删除不彻底的解决方法
- JDBC批处理
- full-text search
- 关于ubuntu下,7z的基本使用(备忘)解压rar格式
- mini2440 liunx2.6 版本 内核制作-基础篇
- about me
- 设计模式之单一职责原则
- mini2440 linux2.6 内核制作-根文件系统制作