1、什么是类
类是一类具有相同特性的事物的抽象描述,是一组相关属性和行为的集合。属性:就是该事物的状态信息。
-
行为:就是在你这个程序中,该状态信息要做什么操作,或者基于事物的状态能做什么。
2、什么是对象
对象是一类事物的一个具体个体(对象并不是找个女朋友)。即对象是类的一个实例,必然具备该类事物的属性和行为。
3、类与对象的关系
-
类是对一类事物的描述,是抽象的。是相同属性和方法的一组对象的集合。
-
对象是一类事物的实例,是具体的。
-
类是对象的模板,对象是类的实体。是能够看的到,摸得到的具体实体。
-
世间万物皆对象
4、 如何定义类
//修饰符+class+类名
public class Student1 {
//成员变量
String name;
int age;
double score;
//成员方法
//无返回值类型,不要数据类型接收
public void character(){
System.out.println("内向,学习好");
}
//有返回值类型需要定义数据类型接收
public String learn(){
return "返回值类型";
}
5.对象的创建
//new关键字,实例化对象
对象中存储的是对象地址
Student1 s1=new Student1();
s1.age=23;
s1.name="李白";
s1.score=283.3;
s1.character();
System.out.println(s1.toString());
6.案例
public class Car01 {
//声明员Car 类,包含属性:name、color、status,拥有方法run,stop,getStatus
String name;
String color;
String status;
public void run(){
this.status="飞速驾驶";
}
public void stop(){
this.status="停车";
}
public String getStatus(){
status=this.status;
return status;
}
@Override
public String toString() {
return "Car01{" +
"name='" + name + '\'' +
", color='" + color + '\'' +
", status='" + status + '\'' +
'}';
}
public static void main(String[] args) {
Car01 car=new Car01();
car.color="黑色";
car.name="Audi A6l";
car.run();
System.out.println(car.toString()+""+car.getStatus());
Car01 car1=new Car01();
car1.color="蓝色";
car1.name="兰博基尼";
car1.stop();
System.out.println(car1.toString()+" "+car1.getStatus());
Employee employee=new Employee();
employee.age=23;
employee.Id=1;
employee.name="雨天也听Jay";
employee.salay=1234.5;
System.out.println(employee.showInfo());
Employee employee1=new Employee();
employee1.age=23;
employee1.Id=2;
employee1.name="开心的枯木";
employee1.salay=22234.4;
System.out.println(employee1.showInfo());
}
}
7.包
1 包的作用
(1)可以避免类重名:有了包之后,类的全名称就变为:包.类名
(2)可以控制某些类型或成员的可见范围
如果某个类型或者成员的权限修饰缺省的话,那么就仅限于本包使用。
(3)分类组织管理众多的类
例如:
-
java.lang----包含一些Java语言的核心类,如String、Math、Integer、 System和Thread等,提供常用功能
-
java.net----包含执行与网络相关的操作的类和接口。
-
java.io ----包含能提供多种输入/输出功能的类。
-
java.util----包含一些实用工具类,如集合框架类、日期时间、数组工具类Arrays,文本扫描仪Scanner,随机值产生工具Random。
-
java.text----包含了一些java格式化相关的类
-
java.sql和javax.sql----包含了java进行JDBC数据库编程的相关类/接口
-
java.awt和java.swing----包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。
2 如何声明包
关键字:package
package 包名;
注意:
(1)必须在源文件的代码首行
(2)一个源文件只能有一个声明包的package语句
包的命名规范和习惯: (1)所有单词都小写,每一个单词之间使用.分割 (2)习惯用公司的域名倒置开头
例如:com.haogu.xxx;
3 如何跨包使用类
注意:只有public的类才能被跨包使用
(1)使用类型的全名称
例如:java.util.Scanner input = new java.util.Scanner(System.in);
(2)使用import 语句之后,代码中使用简名称
import语句告诉编译器到哪里去寻找类。
import语句的语法格式:
4 示例代码
package com.haogu.test02.pkg;
import com.haogu.test01.oop.Student;
import java.util.Date;
import java.util.Scanner;
public class TestPackage {
public static void main(String[] args) {
/* java.util.Scanner input = new java.util.Scanner(System.in);
com.haogu.test01.oop.Student stu = new com.haogu.test01.oop.Student();*/
Scanner input = new Scanner(System.in);
Student student = new Student();
}
}