前面说了类和对象比较宽泛的定义,现在专在Java编程语言中,来说说说Java中类,以及如何写出一个合乎编译器要求的类来。
前面说了,类可以看做是对象的蓝图,它是用来描述一组具有相同特征对象的。那么,对象中,最重要的两种特征内容,就是:
1.数据
2.行为
数据就是描述对象的信息的静态信息了。比如一辆汽车,它的型号,价格,出厂日期等等,都是这个汽车对象的静态信息数据。
行为就是这个对象可以完成的行为,操作等,是对象的动态特征。接上个例子,汽车可以启动,行驶,刹车等等,都是这辆汽车的动态特征。
通过这两方面的特这内容,基本上这个对象就可以描述清楚了。
Java中类就是完全模拟了类的特征内容。在Java类的定义规范里面,有两方面内容来对应类中的数据和行为:
1.属性
用来描述对象的数据元素称为对象的属性(也称为数据/状态)
2.方法
对对象的属性进行的操作称为对象的方法(也称为行为/操作)
Java中类的声明语法规范(即如何定义一个标准的Java类)
语法规则:
[< modifiers>] class < class_name> {
[<attribute_declarations>]
[<constructor_declarations>]
[<method_declarations>]
}
中括号中内容,说明是可以省略的。尖括号中的内容,是必须做出定义的。其他的内容即关键字,和最基本的符号。比如class,说明定义了一个类,而不是其他的Java语言组件内容。
下面这个是一个简单的类的声明示例:
public class Student {
// 定义属性
private String name;
private String sex;
private int grade;
private int age;
// 定义属性“name”的设置方法
public void setName(String student_name) {
name = student_name;
}
// 定义属性“name”的获取方法
public String getName() {
return name;
}
// 定义属性“Sex”的设置方法
public void setSex(String student_sex) {
sex = student_sex;
}
// 定义属性“Sex”的获取方法
public String getSex() {
return sex;
}
// 定义属性“grade”的设置方法
public void setGrade(int student_grade) {
grade = student_grade;
}
// 定义属性“grade”的获取方法
public int getGrade() {
return grade;
}
// 定义属性“age”的设置方法
public void setAge(int student_age) {
age = student_age;
}
// 定义属性“age”的获取方法
public int getAge() {
return age;
}
}
基本上看这个范例,它要做什么,是什么意思,看代码比较清楚了。这就是面向对象编程语言(或者说高级编程语言)比较贴近自然语言的原因。
下面是简单的说明:
<modifiers>为修饰符,可用的有public,abstract和final等关键字(关键字是Java语言中赋以特定含义、并用做专门用途的单词,类名、方法名和属性名以及变量名不能是关键字),用于说明所定义的类有关方面的特性。对于各种关键字和它们的含义以及各自的适用范围,请看后续的介绍;
class也是Java语言关键字,表明这是一个类的定义;
<class_name>是类的名字,如示例中的“Student”,类名一般使用一个用于表示这个类的名词来表示;这里就说明定义了一个学生类,用来描述一组学生对象
<attribute_declarations>是属性(attribute)声明部分,如示例中的“age”、“name”、“sex”、“grade”。具体语法请看后面部分内容;
<constructor_declarations>是构造器(constructor)声明部分。具体语法请看后面部分内容;
<method_declarations>是方法(method)声明部分,如示例中的public void setGrade(int student_grade)、public int getGrade()等。具体语法请看后面部分内容。
分享到:
相关推荐
《面向对象程序设计JAVA语言程序设计》 以下是从给定的文件信息中生成的相关知识点: 1. Java 语言程序设计的基础知识点: * 面向对象程序设计的概念和特点 * Java 语言的特点和优势 * Java 语言的基本结构和组成...
* 运算符:Java 语言中,运算符可以用于进行算术运算、比较运算、逻辑运算等。 * 控制结构:Java 语言中,控制结构可以用于控制程序的执行流程。 * 函数:Java 语言中,函数可以用于封装代码,提高代码的复用性。 * ...
11. 在Java语言中,循环语句可以用来遍历数组、集合等数据结构(题10)。 五、switch语句 12. Java语言中的switch语句可以用来处理多个分支的执行(题9)。 13. 在Java语言中,switch语句可以用来处理枚举类型的...
5. Java编程语言与C++的关系:文档中出现了Java和C++的比较,体现了Java语言在设计上受到了C++的影响,但Java语言设计者有意避免了一些C++中的复杂性,例如指针和内存管理的复杂操作。 6. Java中类的定义:文档提及...
在Java编程语言中,基础知识包括: 1. **基本语法**:Java代码是大小写敏感的,它使用分号作为语句结束符。类(Class)、对象(Object)、方法(Method)是Java程序的基本构建块。例如,定义一个简单的类: ```...
本书全面覆盖了Java语言的基础,包括语法、数据类型、控制结构、类与对象、异常处理、输入/输出以及集合框架等关键主题。 1. **Java基础**: 本书首先介绍Java编程环境的搭建,包括JDK的安装和配置,以及如何编写和...
《Prentice.Hall.Core.Java.Volume.II.Advanced.Features.11th.Edition.2019》是一本深入探讨Java高级特性的经典教材,它针对的是已经掌握Java基础的开发者,旨在帮助他们进一步提升技能,掌握Java语言的精髓。...
11. Java 语言中,Map 是一个接口,HashMap、TreeMap 等都是其实现类。 12. Java 语言中,异常处理可以使用 try、catch、finally 等关键字,例如 try{...}catch(Exception e){...}finally{...}。 四、Java 实践应用...
1. **集合框架**:Java集合框架是Java语言的一个重要组成部分,它包括了各种接口和类,如List、Set、Map等。ArrayList和LinkedList是List接口的两种主要实现,分别适用于随机访问和顺序访问。HashSet和HashMap则是...
11. Java语言的跨平台性: Java语言的跨平台性是指Java语言可以在不同的操作系统上运行。 12. Java语言的多线程性: Java语言的多线程性是指Java语言可以同时执行多个线程。 13. Java语言的动态链接: Java语言...
11. 类中定义的方法可以定义在类体外。 12. 实例方法中不能引用静态变量。 13. 创建对象时,系统将调用适当的构造方法对对象进行初始化。 14. 对象赋值实际上就是同一个对象拥有两个不同的名称,它们有同一个引用...
上海交通大学 Java语言程序设计 JAVA讲义 第05章 类和对象(共125页).ppt 上海交通大学 Java语言程序设计 JAVA讲义 第06、07章 数组、字符串(共40页).ppt 上海交通大学 Java语言程序设计 JAVA讲义 第08章 java...
Java SE 11 语言规范文档是Java平台标准版(Java SE)的官方文档之一,它详细描述了Java语言在11版本中的语法、语义、类型、变量、对象以及其他语言特征。文档由Java语言的主要发明者和贡献者所著,包括James ...
11. 数组:Java语言中数组是一种数据结构,用于存储多个相同类型的数据。 12. Switch语句:Java语言中Switch语句用于根据不同的值执行不同的语句。 13. import语句:Java语言中import语句用于导入其他java类,以便...
- 提供了一个命令行工具,可以直接运行Java代码片段,便于测试和学习Java语言特性。 9. **双精度除法和取模运算优化**: - 对于`double`类型的除法和取模运算,Java 11进行了优化,提高了计算速度。 10. **更新...
从提供的文档信息中,我们可以提炼出关于Java语言的众多知识点。这些知识点涵盖了Java基础知识、面向对象程序设计、异常处理、数据结构以及Java类库等多个方面。 1. Java程序执行入口点:在Java程序中,通常通过...
《Java语言程序设计与数据结构(第11版)》是针对Java编程和数据结构的一本权威教材。作为基础篇,它旨在为初学者提供全面的Java编程基础,并深入讲解如何利用Java实现各种数据结构。以下是对这本书核心知识点的详细...
11.java基础拾遗--匿名内部类语法详解.mp4