JAVA面向对象(一)

类和对象

定义类

[修饰符] class 类名
{
零个到多个构造器定义…
零个到多个成员变量…
零个到多个方法…
}

修饰符:public、final、abstract、或者省略三个修饰符

类名: 是一个合法的标识符即可,由一个或多个有意义的单词连缀而成,每个单词首字母大写,其他字母都小写,单词与单词之间不要使用任何分隔符

构造器是一个类创建对象的根本途径,如果一个类没有构造器,这个类通常无法创建实例,但Java中提供了一个功能:如果一个类没有编写构造器,则系统会为该类提供一个默认的构造器;如果类中编写了构造器,那么系统不会为该类提供构造器

类里各成员之间的定义顺序没有任何影响,各成员之间可以相互调用,static修饰的成员不能访问没有static修饰的成员

定义成员变量

[修饰符] 类型 成员变量名 [=默认名];

修饰符:修饰符可以省略,亦可以是public、protected、private、static、final,其中public、protected、private三个最多只能出现其中之一,可以与static、final组合起来修饰成员变量

类型:Java语言中允许的任何数据类型,包括基本类型和引用类型

成员变量名: 是一个合法的标识符即可

默认值:定义成员变量还可以指定一个可选的默认值

定义方法

[修饰符] 方法返回值类型 方法名(形参列表)
{
//由零条到多条可执行性语句组成的方法体
}

修饰符:修饰符可以省略,亦可以是public、protected、private、static、final、abstract,其中public、protected、private三个最多只能出现其中之一;fina l和 abstract 最多只能出现其中之一,它们可以与static组合起来修饰方法

方法返回值类型:返回值类型可以是Java语言允许的任何数据类型,包括基本类型和引用类型,如果声明了方法返回值类型,则方法体内必须有一个有效的return语句,该语句返回一个变量或一个表达式,如果方法没有返回值,则必须用void声明没有返回值

方法名:与成员变量的命名规则基本相同

形参列表:形参列表用于定义该方法可以接受的参数,形参列表由零组到多组"参数类型 形参名"组合而成,多组参数之间以英文逗号(,)隔开,形参类型与形参名之间以英文空格隔开。一旦在定义方法时指定了形参列表,则调用该方法时必须传入对应的参数值——谁调用方法,谁负责为形参赋值

定义构造器

[修饰符] 构造器名(形参列表)
{
//由零条到多条可执行性语句组成的构造器执行体
}

修饰符:修饰符可以省略,亦可以是public、protected、private其中之一

构造器名必须与类型名相同

形参列表:和定义方法形参列表的格式完全相同

注意构造器既不能定义返回值类型,也不能使用void声明构造器没有返回值。如果为构造器定义了返回值类型,或者使用void声明构造器没有返回值,编译时不会出错,但所谓的构造器会被当作方法处理——它就不再是构造器

一段完整的代码

public class Demo_Person {
	public static void main (String [] args) {
		Person p1=new Person ();
		p1.setName("张三");
		p1.setAge(12);
		System.out.println(p1.getName()+"..."+p1.getAge());
		System.out.println("------------------------------------");
		Person p2=new Person("里斯",15);
		p2.show();
		System.out.println("------------------------------------");
		Person p3=new Person();
		/*p3.name="王五";
		p3.age=14;*/
		//这种调用方式是错误的,name和age是private的,是私有的,只可通过构造器或方法调用
	}
}
class Person {
	private String name;
	private int age;
	public Person () {
		System.out.println("这是空参构造器");
	}
	public Person (String name,int age) {
		this.name=name;
		this.age=age;
		System.out.println("这是有参构造器");
	}
	public void setName (String name) {
		this.name=name;
		System.out.println("这是设置名字的方法");
	}
	public String getName () {
		System.out.println("这是获取名字的方法,一定要类型匹配");
		return name;
	}
	public void setAge (int age) {
		this.age=age;
		System.out.println("这是设置年龄的方法");
	}
	public int getAge () {
		System.out.println("这是获取年龄的方法");
		return age;
	}
	public void show () {
		System.out.println(name+"..."+age);
		System.out.println("这是打印的方法");
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值