Q:为何不使用new和默认的构造方法,如下方法也经过
A:由于b类get方法原本就返回Integer对象,后面这种写法就画蛇添足html
Q:在输入代码的时候,遇到了不少String类,之前没有遇到过
A:string是编程语言中的字符串,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。 String 对象是 System.Char 对象的有序集合,用于表示字符串。String 对象的值是该有序集合的内容,而且该值是不可变的。java
Q:加上public就会出错,为何一个程序中只能有一个public
A:一个".java"源文件中能够包括多个类,但只能有一个public的类,而且public的类名必须与文件名相一致。一个文件中能够只有非public类,若是只有一个非public类,此类能够跟文件名不一样。每一个编译单元(文件)都只能有一个public类,这表示,每一个编译单元都有单一的公共接口,用public类来表现。该接口能够按要求包含众多的支持包访问权限的类。若是在某个编译单元内有一个以上的public类,编译器就会给出错误信息。参考博客[Link]http://www.javashuo.com/article/p-drffxgxl-ho.htmlgit
1.private 私有的
private 关键字是访问控制修饰符,能够应用于类、方法或字段(在类中声明的变量)。 只能在声明 private(内部)类、方法或字段的类中引用这些类、方法或字段。在类的外部或者对于子类而言,它们是不可见的。 全部类成员的默认访问范围都是 package 访问,也就是说,除非存在特定的访问控制修饰符,不然,能够从同一个包中的任何类访问类成员。程序员
2.protected 受保护的
protected 关键字是能够应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。能够在声明 protected 类、方法或字段的类、同一个包中的其余任何类以及任何子类(不管子类是在哪一个包中声明的)中引用这些类、方法或字段。全部类成员的默认访问范围都是 package 访问,也就是说,除非存在特定的访问控制修饰符,不然,能够从同一个包中的任何类访问类成员。编程
3.public 公共的
public 关键字是能够应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。 可能只会在其余任何类或包中引用 public 类、方法或字段。全部类成员的默认访问范围都是 package 访问,也就是说,除非存在特定的访问控制修饰符,不然,能够从同一个包中的任何类访问类成员。微信
1.abstract 抽象
abstract关键字能够修改类或方法。abstract类能够扩展(增长子类),但不能直接实例化。abstract方法不在声明它的类中实现,但必须在某个子类中重写。采用 abstract方法的类原本就是抽象类,而且必须声明为abstract编程语言
2.class
class 关键字用来声明新的 Java 类,该类是相关变量和/或方法的集合。类是面向对象的程序设计方法的基本构造单位。类一般表明某种实际实体,如几何形状或人。类是对象的模板。每一个对象都是类的一个实例。要使用类,一般使用 new 操做符将类的对象实例化,而后调用类的方法来访问类的功能。学习
3.extends 继承、扩展
extends 关键字用在 class 或 interface 声明中,用于指示所声明的类或接口是其名称后跟有 extends 关键字的类或接口的子类。子类继承父类的全部 public 和 protected 变量和方法。 子类能够重写父类的任何非 final 方法。一个类只能扩展一个其余类。this
4.final 最终、不可改变
final 关键字能够应用于类,以指示不能扩展该类(不能有子类)。final 关键字能够应用于方法,以指示在子类中不能重写此方法。一个类不能同时是 abstract 又是 final。abstract 意味着必须扩展类,final 意味着不能扩展类。一个方法不能同时是 abstract 又是 final。abstract 意味着必须重写方法,final 意味着不能重写方法。.net
5.new 新,建立
new 关键字用于建立类的新实例。
new 关键字后面的参数必须是类名,而且类名的后面必须是一组构造方法参数(必须带括号)。
参数集合必须与类的构造方法的签名匹配。
= 左侧的变量的类型必须与要实例化的类或接口具备赋值兼容关系。
6.static 静态
static 关键字能够应用于内部类(在另外一个类中定义的类)、方法或字段(类的成员变量)。
一般,static 关键字意味着应用它的实体在声明该实体的类的任何特定实例外部可用。
static(内部)类能够被其余类实例化和引用(即便它是顶级类)。在上面的示例中,另外一个类中的代码能够实例化 MyStaticClass 类,方法是用包含它的类名来限定其名称,如 MyClass.MyStaticClass。
static 字段(类的成员变量)在类的全部实例中只存在一次。
能够从类的外部调用 static 方法,而不用首先实例化该类。这样的引用始终包括类名做为方法调用的限定符。
1.import 引入
import 关键字使一个包中的一个或全部类在当前 Java 源文件中可见。能够不使用彻底限定的类名来引用导入的类。
当多个包包含同名的类时,许多 Java 程序员只使用特定的 import 语句(没有“*”)来避免不肯定性。
2.package 包
package 关键字指定在 Java 源文件中声明的类所驻留的 Java 包。
package 语句(若是出现)必须是 Java 源文件中的第一个非注释性文本。
例:java.lang.Object。
若是 Java 源文件不包含 package 语句,在该文件中定义的类将位于“默认包”
1.super 父类,超类
super 关键字用于引用使用该关键字的类的超类。
做为独立语句出现的 super 表示调用超类的构造方法。
super.
2.this 本类
this 关键字用于引用当前实例。
当引用可能不明确时,可使用 this 关键字来引用当前的实例。
3.void 无返回值
void 关键字表示 null 类型。
void 能够用做方法的返回类型,以指示该方法不返回值。
老师这种教学方式是我以前从未体验过得,这大大提高了个人自学能力,独立思考能力,逐渐对java感兴趣。java在我平时生活中占了近80%的时间,感受每天一有时间就在学,最近并且明显感受时间很是不够用,想要学的内容很是多,也想天天抽出一点时间来看书,可是天天复习完知识,学完新内容,也就很晚了,本身也思考了一下,在上课的时候不够仔细认真,才致使一些科目在课下要花费不少功夫,这无形中就浪费了一大部分时间。在学习过程当中还遇到了一个问题,在本身独立完成代码的时候还会不自主的用以前c语言的思惟方式,不知道要不要跳出这个圈子,从新创建对Java的思惟体系。