关键字: 基础总结 标题这句话估计每个学java的人都知道,写HelloWorld里必须的。但是每个关键词都能解释清楚吗?作为对OOP的理解和学习的基本概念我感觉是 尤为重要。以下是我个人在现阶段的观点。在今后如果发现这些观点是错误的,我将在这日志里修改(保留错误的观点上),从而可以看到进步。 public 是访问控制符的一种 访问控制符一共有以下这几种 friendly 默认时的控制符(啥都不写时)被修饰的话同一个包内相当于Public。对于包外的来说相当于Private. public 被修饰的话,任何人都可以访问。 private 被修饰的话,外人将不能访问。 thank in java举了一个例子 class Sundae { private Sundae() {} static Sundae makeASundae() { return new Sundae(); } } public class IceCream { public static void main(String[] args) { //! Sundae x = new Sundae(); Sundae x = Sundae.makeASundae(); } } 这个例子说明priate在这里起到2个作用 1。防止被继承 2。类的创建方式被控制起来。 protected 有限制的友好。对于使用者来说相当于Friendly包内可见包外不可见。但是对于包外的继承者来说就可见的。 将thank in java中的2个例子整合一起就清楚了 //: Cookie.java // Creates a library package c05.dessert; public class Cookie { public Cookie() { System.out.println("Cookie constructor" ); } void foo() { System.out.println("foo" ); } //protected void foo() { // System.out.println("foo"); //} } ///:~ Cookie的foo修饰符成protected的话 ChocolateChip的注释就可以去掉 //: ChocolateChip.java // Can't access friendly member // in another class import c05.dessert.*; public class ChocolateChip extends Cookie { public ChocolateChip() { System.out.println( "ChocolateChip constructor" ); } public static void main(String[] args) { ChocolateChip x = new ChocolateChip(); //! x.foo(); // Can't access foo } } ///:~ ps:private protected可以修饰内部类。 static 一个重要的关键词 被static修饰的数据或方法。将作为那个类的实例们共有的东西。从计算机结构来说。所有那个类的实例们的static成员的内存地址是不变得。 void 是表示main方法的返回值的数据类型。 关于java的数据类型 下面这些是java提供的基本数据类型,作为oop的语言返回值也可以是各种类 主类型 大小 最小值 最大值 封装器类型 boolean 1-bit – – Boolean char 16-bit Unicode 0 Unicode 216 - 1 Character byte 8-bit -128 +127 Byte short 16-bit -215 +215 – 1 Short1 int 32-bit -231 +231 – 1 Integer long 64-bit -263 +263 – 1 Long float 32-bit IEEE754 IEEE754 Float double 64-bit IEEE754 IEEE754 Double void – – – Void 1 基本数据类型细分的话可以分成boolean,char,整数,浮点 整数:byte 8 short 16 int 32 long 32 0x表示16进制 O表示8进制 L表示long型 默认int型 浮点:float 32 double 64 0.0 1.1 .01 2e10 3e-10 默认double型 可用f(F)标知float 2.3f main 方法名 方法 方法的格式 返回类型 方法名( /* 参数列表*/ ) {/* 方法主体 */} java的命名规则 1、不能是关键词 2、有英文字母,数字,下划线,和美元字符组成 3、开头以数字开头 String[] args 参数 参数 方法的参数是可选的,参数如果是基本数据类型的话,就没什么需要考虑的因为它是传值得。如果参数是对象,那需要注意的是,这个参数是传地址的。 main方法的特殊性 main是java类的入口。