String 的内存栈和堆,面向对象,类与对象,成员变量,成员方法,静态方法。实例化对象,构造方法。修饰符。
面向对象基础:
eg:
String s=“asd”;
String s=new String("asd");
上诉例子中,虽然表示结果相同,但在内存上存在较大差异,第一个方式是在内存中开辟一个内存空间存放“asd“字符串,即在栈中存放了一个字符串,且只产生一个对象,
s指向该字符串位置。而第二个方法则是在堆中开辟一个空间存放new出来的对象所代表的“asd”,并且在栈中开辟一个空间存放对象内容在堆中的位置,对象s还是指向栈中的存放堆位置的空间。所以第二种方法更为优异。
对象与类:
对象:万物皆对象,在我们生活的周边环境中,存在着各式各样的对象,例如一朵花,每个人,一本书,一台电脑等,而每一个对象都有自己的状态和行为。在java中对象的状态用属性表示,行为则用方法来表示。
类:类是一个模板,它描述一类对象的行为和状态。创建一个类包含类名,成员变量,成员方法。
成员变量:即为对象的状态和属性,在对象实例化后可进行调用赋值。eg:对象名+成员变量=一个值。
成员方法:即为对象的行为,在对象实例化后可进行调用。eg:对象名+成员方法。
静态方法:用static进行修饰的方法,只用类名调用,不需要进行实例化后调用。
访问实例变量和方法:
通过已创建的对象来访问成员变量和成员方法,如下所示:
创建一个类名为Dog 的类:
构造方法得传参:
此例就是在构造方法时,令方法含参,进行实例化对象时进行传参。
修饰符:
Java 的修饰符分为访问修饰符和非访问修饰符。
访问修饰符:访问修饰符也叫访问控制符,是指能够控制类、成员变量、方法的使用权限的关键字。在面向对象编程中,访问控制符是一个很重要的概念,可以使用它来保护对类、变量、方法和构造方法的访问。
访问修饰符有四种,如下表格: