【屌丝学习笔记】第九天 JAVA基础

继续还是this的练习  下面编译时候会报错(晚上解决)

/*
	this的应用,当定义类中功能时,该函数内部要用到调用函数的对象时,这时用this来表示这个对象
*/
class PersonDemo3
{
	public static void main(String[] args) 
	{
		Person p1=new Person(20);
		Person p2=new Person(25);
		boolean b=p1.compare(p2);
		System.out.println(b);
	}
	/*
		需求,给人定义一个用于比较年龄是否相同的功能。
	*/
	public boolean compare(Person p)
	{
		if(this.age==p.age)  //this.age就是p1.age ,p.age就是p2.age。
		{
			return true;
		}
		else
		{
			return false;
		}

		//return this.age==p.age; //简写
	}
}
//人类
class Person  
{  
    private String name;  
    private int age;  
    Person(int age)
	{
		this.age=age;
	}
	Person()  
    {  
        speak();  
    }  
    Person(String name)  
    {  
        this.name=name;  
        speak();  
    }  
    Person(String name,int age)  
    {  
        this.name=name;  
        this.age=age;  
        speak();  
    }  
    void speak()  
    {  
        System.out.println("A: name="+this.name+",age="+this.age);//这写不写this都行,只是看上去好看点  
    }  
}
this构造函数间的运用

/*
	this语句:用于构造函数之间进行互相调用
	this语句只能定义在构造函数的第一行!!!!!!!
	因为初始化先执行
*/
class PersonDemo3
{
	public static void main(String[] args) 
	{
		Person p=new Person("草泥马",30);
	}
}
//人类
class Person
{
	private String name;
	private int age;

	Person(String name)
	{
		this.name=name;
	}
	Person(String name,int age)
	{
		//this.name=name;
		this(name);//p(name) ,也就是new Person(name);
		this.age=age;
	}
}
static 的学习

/*
	static 静态
	用法:是一个修饰符,用于修饰成员(成员变量,成员函数)
	当成员被静态修饰后。就多了一个调用方式,除了可以被对象调用外,还可以直接被类名调用。写法:类名.静态成员
	
	statci特点:
	1,随着类的加载而加载
		也就是说,静态会随着类的消失而消失,说明他的生命周期最长。
	2,优先于的对象存在
		明确一点:静态是先存在的,对象是后存在的
	3,被所有对象所共享
	4,可以直接被类名所调用

	实例变量和类变量的区别
	1,存放位置
		类变量随着类的加载而存在于方法区中。
		实例变量随着对象的建立而存在于堆内存中。
	2,生命周期
		类变量生命周期最长,随着类的消失而消失
		实例变量生命周期随着对象的消失而消失

	静态使用注意事项:
	1,静态方法只能访问静态成员
	2,静态方法中不可以定义this,super关键字
		因为静态优先于对象存在
*/
class  StaticDemo
{
	public static void main(String[] args) 
	{
		Person p1=new Person();
		//p1.name="草泥马";
		//p1.show();
		//System.out.println(p.country);
	}
}
class Person
{
	String name;//实例变量,成员变量
	static String country="CN"; //静态的成员变量,类变量
	public void show()
	{
		System.out.println(name+";"+country);
	}
}
main 函数的学习
/*
	public static void main(String[] args)
	主函数是一个特殊的函数,作为程序的入口,可以被jvm调用

	主函数的定义:
	public:代表着该函数的访问权限是最大的
	static:代表主函数随着类的加载就已经存在了
	void:主函数没有具体的返回值
	main:不是关键字,但是是一个特殊的单词,可以被jvm识别。

	函数的参数:(String[] arr),参数类型是一个数组,该数组中的元素的字符串
	
	主函数是固定格式的:jvm识别
	jvm在调用主函数时,传入的是new String[0]
*/
class MainDemo
{
	public static void main(String[] args) 
	{
		System.out.println(args);
	}
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值