频道栏目
首页 > 程序开发 > 软件开发 > Java > 正文
Java中类与对象的知识学习
2018-06-01 14:03:43           
收藏   我要投稿

类与包

包是Java的类库管理机制,它借助文件系统的目录来管理类库,一个包就是一个目录,属于一个包的类必须放在一个目录下,包名就是目录。

eg:import com.company.Class这里的的Class为类名,则这个类的class文件位于工程目录下的com\company目录下。


类中的成员的访问权限与类变量、类函数

在成员变量及成员函数前可以使用不同的访问控制符来改变它们的访问权限

而如果某个成员有static关键字做修饰,它就不再属于每一个对象,而是属于整个类。这个成员就成为了类变量类函数

类变量与C语言中的静态变量相似,任何属于该类的对象访问到的都是同一个变量,而且它只会初始化一次,即制造新的对象也不会影响到类变量当前的值,这也说明类变量在类中而不是每一个对象里

如果我们有的类有类变量或者类方法即static型的变量、方法,那么我们可以不制造任何一个该类的对象而直接使用该类变量、类方法。即可以通过类的名字来访问它们

对象属于类,每个对象都可以访问到所在类的变量和类函数(如果它们有访问权限)。成员变量存在于对象中,类函数不属于任何对象,所以类函数无法与任何成员变量产生交互,所以类函数不能访问任何非static的成员变量和成员函数。即使是与成员变量无关的成员函数

eg:

class hh{
 static int eg=0;

 public static void setEg(int a) {
  hh.eg = a;
 }

}

public class Main {
 public static void main(String[] args) {
 hh a =new hh();
 System.out.println(hh.eg);
 a.eg=5;
 System.out.println(hh.eg);
 a.setEg(10);
 System.out.println(a.eg);
 hh b=new hh();
 System.out.println(a.eg);
 }
}
//输出为
0
5
10
10

private配合static的奇怪使用

class hh{
 public  int obj=5;
 private static hh A = new hh();

 private hh(){

 }//构造函数私有,使我们无法制造一个对象

 public static hh getA(){
  return A;
 }

}

public class Main {
 public static void main(String[] args) {
  int a=hh.getA().obj;
 }
}//我们没有制造出实际上的对象就得到了一个成员变量的值

这段代码将整个类变成了一个“静态类”。

private static有着特别的用处:为静态方法提供私有静态属性。public static常用的是为该类提供对外暴露即可以被类名直接调用的静态常量。

点击复制链接 与好友分享!回本站首页
上一篇:jvm常见的三种内存溢出情况介绍
下一篇:Java入门学习之常用工具类--集合框架 介绍
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站