本文内容来自本人在学习Java过程中整理的笔记,供自己日后翻阅,也可以作为Java入门基础的读者一部分学习资料,有问题欢迎留言,知无不言

1.当一个类有多个构造器时,一个构造器调用另外一个构造器,可以使用this。

class Post {

private String title;

private String content;

public Post(String title){ // 第一个构造器
this.title = title;
}
public Post(String title, String content)// 第二个构造器 {
this(title);
this.content = content;
}
}

在第二个构造器中,this(title);这一行代码表示调用第一个构造器。 在构造器比较复杂时,这种方式可以让代码更加简洁。

2.我们也可以定义有参数的构造器,即构造器也是可以重载的。比如:

class Post {

private String title;

private String content;

public Post(String title, String content) {
this.title = title;
this.content = content;
}
}

这里构造函数具有两个参数。this表示的是当前对象,表示将参数title和content赋给自己对应的成员变量。如果自行定义了构造器,则编译器就不再会为我们生成默认构造器,针对以上Post代码,通过Post post = new Post();来创建Post对象将会产生编译错误。

3.构造器类似于普通方法,但是有两个特殊的地方:方法名称必须和类名相同,不允许定义返回类型。如果你没有定义任何构造器,则编译器会自动帮你生成一个构造器,称之默认构造器。 默认构造器不包含任何参数,会自动调用其父类的无参数构造器。回顾此前Post类的定义:

class Post {
private String title;
private String content;
}

5.private:表示任何其他类不能直接访问该成员变量,只有该类自身可以访问
protected:表示只有该类自身及其子类可以访问该成员变量
public:表示任何类都可以直接访问该成员变量。
没有修饰:表示同一个包的类可以访问该成员变量

6.关于类和Java文件的关系:一般情况下,都是一个类一个.java文件如果一个.java文件里有多个类,只可能有一个public的类。而且文件名必须和public类同名如果文件里所有类都不是public的,那么文件名和任意一个类同名即可。

7.continue用于在循环控制结构中,让程序立刻跳转到下一次循环。在for循环中,continue语句使程序立即跳转到控制变量更新语句。在while或者do/while循环中,程序立即跳转到布尔表达式的判断语句。比如,我们计算从1到100的所有偶数之和,我们也可以通过加入continue语句来实现:

int sum = 0;
for(int i = 0; i <= 100; i++)
{
if (i % 2 == 1) {
continue; // 如果是奇数,则立刻跳转到下一次循环,不做累加
}
sum += i;
}

8.Java利用for语句引入了更为简单的方式来进行Java数据及容器的操作。通过这种方式,我们可以不用引入额外的控制变量。以遍历数组为例: 一般的for循环:

String[] sentences = {“hello”, “thank u”, “thank u very much”};

for (int index = 0; index < sentences.length; index++){ 
   System.out.println(sentences[index]);
  }

//可以采用如下方式进行简化:

String[] sentences = {“hello”, “thank u”, “thank u very much”};

  for (String sentence : sentences)  {
      System.out.println(sentence);
  }

9.’==’和’!=’作为关系运算符只用来比较对象的引用。如果想比较两个对象实际内容是否相同,需要调用对象的equals()方法。比如判断一个字符串str的内容是否为”abcd”,应该这样比较:

if (str.equals("abcd")) {
    }
//下面这种方式是一种错误的方式: 
if (str == "abcd") {
}

今天就总结这么多,下次再总结

猜你喜欢

转载自blog.csdn.net/qq_35849955/article/details/82467353
今日推荐