java——对象和类

package javaLearn;

//java 对象和类
//Java作为一种面向对象的语言,支持一下基本概念:
//多态
//继承
//封装
//抽象
//类
//对象
//实例
//方法
//重载
//本章我们重点研究对象和类的概念。
//对象是累的实例,有状态和行为。
//类:类是一个模板,它描述一类对象的行为和状态。


//java中类
//类可以看成是创建java对象的模板。
//通过下面一个简单的泪来理解java中累的定义:
 class Puppy{
	String breed;
	int age;
	String color;
	void barking(){
		
	}
	void hungry(){
		
	}
	void sleeping(){
		
	}
}
//一个类可以包含以下类型变量:
//局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
//成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象初始化的时候实例化。成员变量可以被类种方法、构造函数和特定类的语句块访问。
//类变量:类变量也生命在类中,方法体之外,但必须声明static类型。
//一个类可以拥有多个方法,在上面的例子中:barking()、hungry()和sleeping()都是HelloWorld类的方法。

//构造函数
//每个类都有构造方法。如果没有显示的为类定义构造方法,java编译器将会为该类提供一个默认构造方法。
//在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。
//下面是一个构造方法示例:
class Puppy2{
	public Puppy2(){
		
	}
	public Puppy2( String name ){
		//这个构造器仅有一个参数:name
	}
}

//创建对象
//对象是根据类创建的。在java中,使用关键字new来创建一个新的对象,创建对象需要以下三部:
//声明一个对象,包括对象名称和对象类型。
//实例化:使用关键字new 来创建一个对象
//初始化:使用new创建对象时,会调用构造方法初始化对象
//下面是一个创建对象的例子:
class Puppy3{
	public Puppy3( String name ){
		System.out.println( name );
	}
//	public static void main(String [] args ){
//		Puppy3 myPuppy = new Puppy3( "xiexialing" );
//	}
}

//访问实例变量和方法
//通过已创建的对象来访问成员变量和成员方法,如下所示:
///* 实例化对象  */
//ObjectReference = new Constructor();
//访问其中的变量
//ObjectReference.variableName;
//访问类中的方法
//ObjectReference.MethodName();
//实例
class Puppy4{
	int puppyAge;
	public Puppy4( String name ){
		System.out.println( name );
	}
	public void setAge( int age ){
		puppyAge = age;
	}
	public int getAge(){
		return puppyAge;
	}
	public static void main( String []args ){
		Puppy4 puppy = new Puppy4( "xiexialing" );
		puppy.setAge(2);
		puppy.getAge();
		
	}
}

//在本节的最后部分,我们将学习源文件的声明规则。当一个源文件中定义多个类,并且还有import语句和package语句时,要特别注意这些规则。
//一个源文件只能有一个public类
//一个原文件可以有多个非public类
//源文件的名称应该和public类的类名保持一致。
//如果一个类定义在某个包中,那么package语句应该在源文件的首行
//如果原文件包含import语句,那么应该放在package语句和类定义之间。
//import语句和package语句队员文件中定义的所有类都有效。
//类由若干访问级别,并且类也分不同的类型:抽象类和final类等。
//除了以上提到的几种类型,java还有一些特殊的类,如:内容类、匿名类。

//java包
//包主要用来对类和接口分类。当开发java程序时,可能编写成千上万的类,因此很有必要对类和接口进行分类。

//Import语句
//在java中,如果给出一个完整的限定名,包括包名、类名,那么java编译器就可以很轻易的定位到源代码或者类。
//Import语句
//一个简单的例子
//在该例子中,我们创建两个类:Employee 和 EmployeeTest
//Employee 类有四个成员变量:name\age\designation和salary.该类显式声明一个构造函数,该方法只有一个参数
//public class Employee{
//	String name;
//	int age;
//	String designation;
//	double salary;
//	
//	public Employee( String name ){
//		this.name = name;
//	}
//	
//	public void setAge( int empAge ){
//		age = empAge;
//	}
//	
//	public void setDesignation( String empDesignation ){
//		designation = empDesignation;
//	}
//	
//	public void setSalary( double empSalary ){
//		salary = empSalary;
//	}
//	
//	public void printEmployee(){
//		System.out.println( "姓名" + name );
//		System.out.println( "年龄" + age );
//		System.out.println( "薪水" + salary );
//		System.out.println( "职位" + designation );
//	}
//}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值