类
java类的基本结构(如何定义自己的类)
modifiers(public private protected) class MyClass extends MySuperClass implements YourInterface {
// field, constructor, and method declarations
}
public class Bicycle {
// the Bicycle class has three fields
public int cadence;
public int gear;
public int speed;
// the Bicycle class has one constructor
public Bicycle(int startCadence, int startSpeed, int startGear) {
gear = startGear;
cadence = startCadence;
speed = startSpeed;
}
// the Bicycle class has four methods
public void setCadence(int newValue) {
cadence = newValue;
}
public void setGear(int newValue) {
gear = newValue;
}
public void applyBrake(int decrement) {
speed -= decrement;
}
public void speedUp(int increment) {
speed += increment;
}
}
三种类型的变量:字段、局部变量、参数
变量的命名规则:[$_\w]{A-Za-z0-9}
方法定义:
修饰符(public private protected)、返回类型、方法名称、参数列表、异常列表、方法体
构造函数:类名相同但没有返回值的方法(如果无法访问一个类的构造方法则无法直接创建类的实例)
任意数量的参数:(Type... parameters)
原始数据类型和引用数据类型的参数传递
对象
使用类创建对象(使用默认构造函数以及其他构造函数创建不通的对象)
- 声明类实例对象(声明对象类型)
- 实例化对象(new操作创建对象)
- 初始化对象(new后调用构造函数初始化对象)
使用对象:对象名称加点操作(.)和属性名称或者方法名称(垃圾回收的问题,置为null)
类的更多特性
- 方法返回(执行完所有代码、遇到return语句、抛出异常)
- this关键字
- 成员访问控制(public private protected)
- 类成员和实例成员
- 成员初始化过程(静态初始化块、实例初始化块,初始化块可以考虑使用final关键字防止子类重写后出现问题)
嵌套类
-
静态嵌套类:OuterClass.StaticNestedClass nestedObject = new OuterClass.StaticNestedClass()
-
内部类(和实例关联,不能定义任何静态成员):OuterClass.InnerClass innerObject = outerObject.new InnerClass()
- 内部类和外部类的成员访问问题:
-
public class ShadowTest {
public int x = 0;
class FirstLevel {
public int x = 1;
void methodInFirstLevel(int x) {
System.out.println("x = " + x);
System.out.println("this.x = " + this.x);
System.out.println("ShadowTest.this.x = " + ShadowTest.this.x);
}
}
public static void main(String... args) {
ShadowTest st = new ShadowTest();
ShadowTest.FirstLevel fl = st.new FirstLevel();
fl.methodInFirstLevel(23);
}
}
The following is the output of this example:
x = 23
this.x = 1
ShadowTest.this.x = 0
- 局部类(局部类只能访问包含块中final修饰的变量)(Java SE 8中可以访问包含方法的参数)
- 匿名类(可以访问包含类的成员、只能访问final修饰的局部变量)
枚举类型
定义:
public enum Day {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY,
THURSDAY, FRIDAY, SATURDAY
}
使用:
public class EnumTest {
Day day;
public EnumTest(Day day) {
this.day = day;
}
public void tellItLikeItIs() {
switch (day) {
case MONDAY:
System.out.println("Mondays are bad.");
break;
case FRIDAY:
System.out.println("Fridays are better.");
break;
case SATURDAY: case SUNDAY:
System.out.println("Weekends are best.");
break;
default:
System.out.println("Midweek days are so-so.");
break;
}
}
public static void main(String[] args) {
EnumTest firstDay = new EnumTest(Day.MONDAY);
firstDay.tellItLikeItIs();
EnumTest thirdDay = new EnumTest(Day.WEDNESDAY);
thirdDay.tellItLikeItIs();
EnumTest fifthDay = new EnumTest(Day.FRIDAY);
fifthDay.tellItLikeItIs();
EnumTest sixthDay = new EnumTest(Day.SATURDAY);
sixthDay.tellItLikeItIs();
EnumTest seventhDay = new EnumTest(Day.SUNDAY);
seventhDay.tellItLikeItIs();
}
}
Classes and Objects
什么?java类的定义(字段、局部变量、参数、构造函数、方法)、对象的创建和初始化以及使用、内部类、嵌套类、局部类、匿名类和枚举类型
基础:类的定义和使用
重点:各种嵌套类的特性,枚举的使用场景和特性
分享到:
相关推荐
本次实验进一步学习了Java的相关知识,深入理解了面向过程与面向对象语言的区别,了解了面向对象语言的三大特征,掌握类的声明和构造方法,掌握了对象的创建方法与创建机制,掌握了成员变量、类变量和局部变量区别,...
完整版 Java初级教程 Java语言程序设计 第4章 类和对象(共22页).ppt 完整版 Java初级教程 Java语言程序设计 第5章 继承与接口(共15页).ppt 完整版 Java初级教程 Java语言程序设计 第6章 内部类和异常类(共22页...
第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象第4章 类和对象
Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....
java 第4章 类与对象的基本概念 java 第4章 类与对象的基本概念
Java第4章 认识类和对象.含源代码
java面向对象程序设计第4章源代码
第四章-Java类和对象的高级特征-重庆工商大学PPT优秀资料.ppt
第10章 static修饰符.pptx 第10章 枚举.pptx ...第4章 类和对象(1).pptx 第4章 类和对象(2).pptx 第5章 类的继承.pptx 第6章 抽象类和接口.pptx 第7章 多态.pptx 第8章 包装器类.pptx 第9章 内部类.pptx
第1章_Java入门,第2章_基本数据类型,第3章_运算符、表达式和语句第4章_类与对象第5章_继承与接口第6章_内部类与异常类
Java第四章类与对象,介绍类与对象的使用,关系,Java是面向对象的程序设计语言。封装性、继承性、多态性
完整版精品java课件 Java基础入门教程 Java程序设计 第4章 类和对象(共57页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第5章 继承和接口(共47页).ppt 完整版精品java课件 Java基础入门教程 Java...
完整版 Java初级教程 Java语言程序设计 第4章 类和对象(共22页).ppt 完整版 Java初级教程 Java语言程序设计 第5章 继承与接口(共15页).ppt 完整版 Java初级教程 Java语言程序设计 第6章 内部类和异常类(共22页...
java起初有点难学,入门就好了,有想学的可以和我联系啊
java面向对象程序设计第2版第4章-类与对象.ppt
完整版 Java编程基础入门教程 Java语言程序设计 第4章_类与对象(共59页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第5章_继承与多态(共61页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第6章...
13.1 TCP/IP协议简介 第13章-Java网络编程-Java面向对象程序设计教程-微课视频版-程杰-清华大学出版社全文共17页,当前为第4页。 13.1 TCP/IP协议简介 底层网络 网络层 传输层 应用层 底层网络协议 网页浏览 文件...
推荐课程 完整版优质java教程 java精品教学课件 Java语言程序设计 第4章 方法 函数(共26页).ppt 推荐课程 完整版优质java教程 java精品教学课件 Java语言程序设计 第5章 数组(共58页).ppt 推荐课程 完整版优质...
第四、五天:方法与数组 第六天:类 第七天:对象的出生 第八天:类与类继承 第九天:具体到抽象的升华 第10天:权限内部类包 第11天:API类 第12天:字符串王者地位 第13天:算法工具类包装类 第14天:正则及其他类...
java面向对象程序设计第2版第4章类与对象.ppt