this 关键字
1、this.成员变量名;
成员比哪里名和局部变量名重名,为了区分,this。成员变量名,如果没有同名的情况,this可以省略
2、this.成员方法,this可以省略
3、this,可以表示构造方法
this(参数列表调用时必须是构造方法的第一句)
4、this是内存图
this是成员变量,每个对象都是自己的this
this是引用变量,每个this,指向当前对象自身
基本数据类型传值和引用数据类型传值
基本数据类型传值,不能在一个方法中改变另一个方法中的变量值
引用数据类型传值,可以子啊一个方法中改变另一个方法中的值
public class Main {public static void main(String[] args) {int a = 1, b = 2;Main main1 = new Main();System.out.println("交换前" + a + b);main1.swap(a, b);System.out.println("交换后" + a + b);InnerMain im1 = new InnerMain(1, 12);System.out.println("交换前" + im1.x + im1.y);main1.swap1(im1);System.out.println("交换后" + im1.x + im1.y);}public void swap1(InnerMain in) {int temp;temp = in.x;in.x = in.y;in.y = temp;}public void swap(int a, int b) {System.out.println("交换前" + a + b);int temp;temp = a;a = b;b = temp;System.out.println("交换后" + a + b);}}/*** InnerMain*/
class InnerMain {int x;int y;public InnerMain(int x, int y) {this.x = x;this.y = y;}public void print() {System.out.println(x + y);}
}
package
1、package作用
1)、关了文件
2)、不同包内可以有同名文件
3)、包权限
2、包语法:
package+包名
以分号结尾,一定是程序的第一条语句
3、命名规范,表名必须小写
com.sxt.oop.object1
顶级域名:com,cn,edu,机构名,项目名,模块名,子模块名
import
1、如果在当前包找,不要有和系统重名的类
2、java.lang包下的不用import :System,Math
3、import java.util.Scanner
如果不导包,就需要 java.util.Scanner input=new java.util.Scanner(System.in);
4、如果要用不同包中的同名累,import只能导入1个另一个需要使用全路径 com.sxt.oop.array.Circle c1=new com.sxt.oop.array.Circle();
5、import static java.lang.Math.*,不是导入类是导入所有的静态成员