java的进阶语法

本文详细介绍了Java中的类和对象,包括对象的属性和方法、类与对象的关系、面向对象语言的概念,以及如何定义和使用类。此外,讲解了类的方法,包括无参方法和带参数的方法,以及变量的作用域、javadoc注释的使用。文章还涵盖了包的使用,字符串的处理,如长度、比较和使用StringBuffer类进行操作。
摘要由CSDN通过智能技术生成

十一章.类和对象

1.1对象

Java是一种面对对象的编程语言,因此我们要学会用面向对象的思想考虑问题和编程思想,现实世界中客观的任何事物都可以看做对象,其实每一个对象都有自己的特征,包括静态特征和动态特征…静态特征是可以用某些数据来描述的特征,动态特征是对象所表现的行为或对象所具有的功能,如图所示:

对 象 静态特征 静态特征的值 动态特征
"顾客"对象 姓名 张浩
张浩 年龄 20 购买商品
体重 60kg
"收银员"对象 员工名 10001 收款
李明 姓名 李明
部门 财务部 打印菜单

通过表格我们可以看出,不同类别的对象具有不同的静态特征和动态特征。

对象的属性和方法:

在面向对象的编程思想中,把对象的静态特征和动态特征分为对象的属性和方法,例如,在上面的例子中,“顾客”

对象有一个属性是姓名,属性值是“张浩”,而方法是用来描述对象动态特征(行为)的一个动作序列。

对象:用来描述客观事物的一个实体,由一组属性和方法构成。

封装:

就是把一个事物包装起来,并尽可能的隐藏内部细节。

1.2类

类和对象的关系:

类和对象的关系就是抽象和具体的关系,类是对象的抽象,对象是类的实例。

插图片:::::::“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“’‘

类是对象的类型:

我们以前学过了很多数据类型,如整型(int),双精度浮点型(double),字符型(char),那么,如果想描述顾客“张浩”,他的数据类型又是什么,是字符型还是字符串类型?其实都不是,“张浩”的类型就是“顾客”,也就是说类就是对象的类型。

1.3面向对象的语言

在面向对象程序设计中,类是程序的基本单位,java是完全面向对象的编程语言,所有程序都是以类为组织单元的.

示例1:

public class HelloWorld{
   
	public static void main (String [] args){
   
		system.out.println("HelloWorld");
	}
}

示例1,程序框架最外层的作用就是定义了一个类Hello word,而Hello word就是类名.

java的类模板:

语法:

public calss<类名>{
   
	//定义属性部分
	属性1的类型  属性1;
	属性2的类型  属性2;
	......
	属性3的类型  属性3;
	
	//定义方法部分
	方法1;
	方法2;
	......
	方法n;
}

其中类的命名也要遵循一定的规则:

<1>.不能使用Java中的关键字

<2>不能包含任何嵌入的空格或点号".",以及下划线"_",字符"$"外的特殊符号

<3>不能以数字开头

规范:

》类名通常由多个单词组成,每个单词的首字母大写。

》另外,类名应该简洁而由意义,尽量使用完整单词,避免使用缩写词,除非该缩写词已被广泛使用,如HTML,HTTP,IP等.

如何定义类:

1.定义类名

通过定义类名得到程序最外层的框架

语法

public class 类名{
   
		//.......
}

2.编写类的属性

通过在类的主体中定义类变量来描述所具有的静态特征,(属性),这些变量称为类的成员变量.

3.编写类的方法

通过在类中定义方法来描述所具有的行为,这些方法称为类的成员方法

语法

访问修饰符  访问值类型 方法名(){
	//方法体
} 

访问修饰符限制了访问该方法的范围,如public,还有其他的访问修饰符,这个类型可以是基本类型,或者是引用类型,也可以没有访问值,此时必须要用void来描述.方法名一般使用有意义的名字来描述该方法的作用,其命名规则与标识符的命名规则想符号.

示例2:

public class Yx2 {
   
	String schoolName;	//中心名称
	int classNumber; 	//教室数目
	int labNumber;		//机房数目
	
	//定义北大青鸟中心的方法
public void showCenter() {
   
		System.out.println(schoolName+"培训机构中心\n"+"配备:"+classNumber+"教"
	+labNumber+"机");
	}
}

如何创建和使用对象

定好了类,下面就可以根据类生成对象,称为类的实例化特征,一个实例也就是一个对象,一个类可以生成多个对象。创建对象的语法如下:

语法:

类名  对象名 =new 类名();

在创建类的对象名时,需要使用Java的new关键字.例如,创建School类的一个对象。
S c h o o l c e n t e r = n e w S c h o o l ( ) ; School center=new School(); Schoolcenter=newSchool();
center对象的类型是School 类型。使用new创建对象时,我们并没有给他们的数据成员赋一个特定的值。考虑到每个对象属性值可能是不一样的,所以在创建对象后再给它的数据成员赋值。

语法:

对象名.属性						//引用对象的属性
对象名.方法名						//引用对象的方法

示例 3:

public class Yx3 {
   
	public static void main(String[] args) {
   
		Yx2 center=new Yx2();
		System.out.println("***初始化成员变量前***");
		center.showCenter();
		center.schoolName="北京远航"; //给schoolName属性赋值
		center.classNumber=10;		//给classNumber属性赋值
		center.labNumber=10;		//给labNumber属性赋值
		System.out.println("\n***初始化成员变量后***");
		center.showCenter();
	}
}

声明:

main()方法是程序的人口,可以出现在任何一个类中,但要保证一个Java类中只有一个main()方法。因此,我们可以将main()方法写在school类中。但这里,我们将main方法发在了initialSchool类中,目的是使不同的类实现不同的功能。

》使用关键字new创建的对象“center”

School center =new School();

》使用“."操作访问类的方法。

center.showCenter();
类型 默认值
int 0
double 0.0
char “\u0000”
boolean false
String null

假如我们定义一个Scho’o’l类,可以用如下代码来实现方法与属性之间的内容:

第一步:

先定义一个学员类:

public class Visitor {
   
	String name;
	int age;
	public void show() {
   
		Scanner input =new Scanner (System.in);
		while (!"n".equals(name)) {
   
			if(age>=18
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值