C++和JAVA同样作为面向对象编程语言,思想上是一致的。但由于JAVA有JVM的支持所以在面向对象编程方面更加灵活。
JAVA的类都放在包中,包类似于C++的命名空间。
使用关键字package来指示类属于哪个包
package com.eniaccheng; //eniac类属于com.eniaccheng这个包 public class eniac { }
JAVA与C++一样,通过public protected private进行访问级别的控制,但JAVA多出来一个默认访问级别。如下表
private | 默认 | protected | public | |
同类 | √ | √ | √ | √ |
同包类 | × | √ | √ | √ |
子类 | × | × | √ | √ |
非同包类、非子类 | × | × | × | √ |
使用class关键字定义类,类一样可以有访问级别限制。一个源文件只能有一个public类,且该类与源文件同名。
package com.eniaccheng public eniac{ private int name; protected int age; public boolean isCool() { return true; } }
JAVA比C++,多出一个“静态代码块”的概念,用于初始化在声明时没有初始化的静态变量
package com.eniaccheng
public eniac{
static String name; //声明时未初始化
static int age = 32; //声明时初始化
static { //静态代码块
name = "Eniac Cheng";
}
}
与C++一样使用关键字new
eniac tiancai = new eniac();
原文:https://www.cnblogs.com/EniacCheng/p/13883170.html