Java 中主要有如下几种类型的变量
//局部变量
类变量(静态变量)
成员变量(非静态变量)
//public Employee(string name, string alias)
{
// Use this to qualify the fields, name and alias:
this.name = name;
this.alias = alias;
}
这是个构造函数,this.name指当前类的属性,后一个name是构造函数中的参数
这就是给类中的属性赋值
this 关键字用于引用当前对象,不能对它进行赋值,但可以将this关键字的值赋值给另外一个变量。
String大写
byte、int、long、和short都可以用十进制、16进制以及8进制的方式来表示。
当使用常量的时候,前缀 0 表示 8 进制,而前缀 0x 代表 16 进制
\n 换行 (0x0a)
\r 回车 (0x0d)
\f 换页符(0x0c)
\b 退格 (0x08)
\0 空字符 (0x20)
\s 字符串
\t 制表符
" 双引号
’ 单引号
\ 反斜杠
\ddd 八进制字符 (ddd)
\uxxxx 16进制Unicode字符 (xxxx)
final被修饰的变量为常量一旦赋值不能修改,被修改的方法为最终方法不能被重写,被修饰的类是最终类,不能被继承
static被修饰的变量和方法,为该整个类及其类的对象所共享,一个类或对象修改了被定义的类或方法,其他的也会跟着变量。。这就是说被static修饰的是大家共用的。。
就一块肥皂多个人用,每个人用都会少而不是像不用static修饰的是每个人有每个人的肥皂,你用自己的和别人没有关系。
public class Logger { private String format; public String getFormat() { return this.format; } public void setFormat(String format) { this.format = format; } }
实例中,Logger 类中的 format 变量为私有变量,所以其他类不能直接得到和设置该变量的值。为了使其他类能够操作该变量,定义了两个 public 方法:getFormat() (返回 format的值)和 setFormat(String)(设置 format 的值)
protected的可见性在于两点:
• 基类的 protected 成员是包内可见的,并且对子类可见;
• 若子类与基类不在同一包中,那么在子类中,子类实例可以访问其从基类继承而来的protected方法,而不能访问基类实例的protected方法。
• package p2; class MyObject2 { protected Object clone() throws CloneNotSupportedException{ return super.clone(); } } package p22; public class Test2 extends MyObject2 { public static void main(String args[]) { MyObject2 obj = new MyObject2(); obj.clone(); // Compile Error ----(1) Test2 tobj = new Test2(); tobj.clone(); // Complie OK ----(2) } }
对于(1)而言,clone()方法来自于类MyObject2本身,因此其可见性为包p2及MyObject2的子类,虽然Test2是MyObject2的子类,但在Test2中不能访问基类MyObject2的protected方法clone(),因此编译不通过;对于(2)而言,由于在Test2中访问的是其本身实例的从基类MyObject2继承来的的clone(),因此编译通过。
在Java 中,for 循环中定义的变量的作用范围是当前for 循环,离开循环体,该变量将失效。如果想在结束for 循环后,还能应用某一个变量,那么就需要在for 循环以外声明该变量(可以不为其赋值),然后在循环体内对其进行赋值。这样,在结束for 循环后,该变量才不会失效。
在 Java 中字符串属于对象
Java中使用 new关键字 加上 构造方法,来创建一个对象,下面是一个名为Cat的类,public class Cat { public Cat() { System.out.println(“这是构造方法”); }}使用new + 构造方法 来创建一个对象。
那么也就是Cat c = new Cat();前半部分,Cat c 的意思是,在内存中分配一个变量,名字叫c,这个变量是Cat类型的;后半部分,new Cat(); 这就是new关键字和构造方法来创建一个对象,Cat()是构造方法的名字。
字符串相减相当于ascll码相减,所以‘0’-‘0’=0‘1’-‘0’=1。