static: 可以修饰属性:建议使用.变量名来调用 可以修饰方法:建议使用.变量名来调用 final:可以修饰类:表示这个类不能被继承 修饰方法:表示这个方法不能被重写 修饰属性:表示这个属性不能重新赋值
常量:使用final来修饰。通常我们还会加上static来修饰 通常常量的变量名会大写。如果有多个单词构成。每个单词的所有字母都大写。并且之间使用下划线 例子:public static final int AGE_OF_PERSON=10;
包:要求唯一。公司网址:www.taobao.com 包名:公司网址翻转:com.taobao.项目名…… javac -d . a.java java com.taobao.test
导入:import import com.*; ctrl+shitf+o 导入包快捷键
javac -d . a.java //在当前路径编译
public protected:在本类中可以访问,在相同包下可以访问。在子类可以访问 private私有的。在本类中访问。
类内部 本包 子类 外部包 public 可 可 可 可 protected 可 可 可 不可 default 可 可 不可 不可 private 可 不可 不可 不可
protected修饰的方法,可以找个类继承它,然后重写被protected修饰的方法。不能在外部包被new出来然后调用 private修饰的属性和方法不能被继承
string 可以使用字面值给对象的引用赋值 java.lang.*所有的类,我们不需要手动导入。java编译器会默认加载进来 String s1="hello" //在String pool找有没有hello的地址,如果有,直接返回 String s2="hello" //有,直接返回 通过new创建的,存放在堆里
String s3=new String("hello");这句话在String pool和堆里创建了对象,一共创建了2个对象
myeclipse 快捷键,从方法开始的大括号定位到匹配方法结束的大括号转至匹配的括号 Ctrl+Shift+P
boolean equals(Object anObject) 比较此字符串与指定的对象。
boolean equalsIgnoreCase(String anotherString) 将此 String 与另一个 String 进行比较,不考虑大小写。
int compareTo(String anotherString) 按字典顺序比较两个字符串。 从不一样的位数开始asci码相减
String concat(String str) 将指定字符串联到此字符串的结尾。
int indexOf(String str) 返回第一次出现的指定子字符串在此字符串中的索引。
String replace(char oldChar, char newChar) 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 而生成的。
boolean startsWith(String prefix, int toffset) 测试此字符串是否以指定前缀开始,该前缀以指定索引开始。
String toUpperCase() 使用默认语言环境的规则将此 String 中的所有字符都转换为大写。 String toLowerCase() 使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
equals equalsIgnoreCase compareTo indexof isempty replace startswith toUpperCase() toLowerCase() trim() 去空格
api:application Programming Interfac:应用编程接口 之所以叫接口,因为我们只管方法的声明,不管它怎么实现的
Object:这个类是所有类的父类或者间接父类。 Object:是最顶层的类 所有类都是Object类衍生出来的
我们打印对象的引用指向的地址,会默认调用该对象的toString()方法 重写了Object的toString()方法
Student3 s=new Student3(); System.out.println(s); System.out.println(s.toString()); 输出结果:[email protected] [email protected] 打印字符串就是打印他重写Object的toString()方法
equals:Object类的equals方法,底层就是使用两个等号比较。比较对象的地址是否一样。 String类的equals方法重写了Object类的equals方法。String类重写后,只要String类的字符串的值一样,就表示这两个字符串相同 所以,我们比较String是否相同,使用equals方法,而不是使用==来比较。
instanceof: x instanceof Y 表示x是不是Y的实例。或者说,x是不是Y的一个对象的引用 new Dog 是 Dog的实例
class Dog { String name; int age; }
public boolean equals(Object anObject) { if (this == anObject) { return true; } }
public boolean equals(Object anObject) { if (this == anObject) { return true; } if (anObject instanceof String) { String anotherString = (String)anObject; int n = count; if (n == anotherString.count) { char v1[] = value; char v2[] = anotherString.value; int i = offset; int j = anotherString.offset; while (n-- != 0) { if (v1[i++] != v2[j++]) return false; } return true; } } return false; }