Java新手求助,纠结了好久了!

学Java没几天,看的是毕向东的视频。结合书本来看。但是我看书本上面类的前面都加public,而他的视频上面没有加,这是怎么回事?难道他教的过时了吗?

类公开 属性私有 错不了 都加

类公开 属性私有 错不了 都加

加了public说明这是一个全局类,可以被其他任何类引用。没有加public说明这只是一个保留类,只能被当前package中的其他类引用。
区别就在于修饰符。不同修饰符所代表其作用域。毕向东的视频是java基础,他只是简单的做一个功能展示,并没有非常细分的建包。你仔细看的话他肯定说过修饰符的作用。

加public表示为全局类,该类可以被任何类引用
不加public为默认保留类,只能在其同一包下的类引用。

毕向东的视频我没看过,我周围的同学都是看马士兵和韩顺平的视频,他们反应很不错的。

public,private,protected,default是四大权限修饰符,表示一个类能否被包中其他类,不同包中类引用等等.新手的话不用纠结这个,基本记得主函数的类加public,其他类不用就行了.

1、私有权限(private)

  private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类)。被private修饰的成员,只能在定义它们的类中使用,在其他类中不能调用。

  2、默认权限(default)

  类,数据成员,构造方法,方法成员,都能够使用默认权限,即不写任何关键字。默认权限即同包权限,同包权限的元素只能在定义它们的类中,以及同包的类中被调用。

  3、受保护权限(protected)

  protected可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类)。被protected修饰的成员,能在定义它们的类中,同包的类中被调用。如果有不同包的类想调用它们,那么这个类必须是定义它们的类的子类。

  4、公共权限(public)

  public可以修饰类,数据成员,构造方法,方法成员。被public修饰的成员,可以在任何一个类中被调用,不管同包或不同包,是权限最大的一个修饰符。

public 和 private 都是对类属性的声明。

不加就是缺省(default)的,java中有很多不添加就使用默认的。慢慢来。

Java访问修饰符包括private,default,protected和public。含义分别表示私有的,默认的,受保护的和公有的访问修饰符。这些访问修饰符既可以修饰类中的属性,又可以修饰类中的方法,而public和default还可以修饰类。在同一个java文件里,公有类有且仅有一个,并且该文件命名为类名.java。

Java访问修饰符就是确定类中属性或方法的访问权限,换句话说,就是这些属性和方法所起的作用范围。

private,私有的访问权限,也是最严格的访问权限,仅只能在设置了该权限的类中访问,利用这个访问权限,表现出封装思想。

default,默认的访问权限,也是可以省略的访问权限,它不仅能在设置了该权限的类中访问,也可以在同一包中的类或子类中访问。

protected,受保护的访问权限,它除了具有default的访问权限外,还可以在不同包中所继承的子类访问。

public,公有的访问权限,也是最宽松的访问权限,不仅可以是同一个类或子类,还是同一个包中的类或子类,又还是不同包中的类或子类,都可以访问。

要想更深入地理解这些访问权限,一方面需要明白各自的作用域,另一方面更是要弄清楚各自所体现出来的编程思想,比方说,prvite表现的封装思想,public表现的面向接口编程的思想等。

在面向对象设计和编程的过程中,归根结底就是类的设计。而要设计出不仅满足当前需求同时也能符合未来需求的类,就很有必要对类中属性和行为设置合适的访问
权限。那些应该为私有的,那些又应该为公有的,还有那些又应该为受保护的等,都应该给予合理的规划和布局,一来保证程序的功能要求,二来要体现程序的扩展
性能,三来要呈现程序友好性质。总之,程序应该更好地服务用户。而访问权限在这样宏伟目标里扮演着重要角色。