1、面向过程和面向对象的区别:
面向过程(Procedure Oriented )是一种以过程为中心的编程思想,主要将问题分解成一个个详细步骤,并通过函数实现每个步骤,然后依次调用这些函数来解决问题。常见面向过程语言:C语言。
面向对象编程(Object-Oriented Programming,简称OOP ),它围绕数据或对象来组织软件设计,而不是围绕功能和逻辑。它更强调对象与对象之间的交互,对象的属性和方法都被封装在对象内部。常见面向对象的语言:Java、Python、PHP
2、类和对象
类:是具有相同特性的事物的抽象描述,是相关属性和行为的集合。
ps:属性即为该事物的状态,例如一个学生有姓名、身高、年龄等基本信息,这些基本信息即为属性。行为即为该事物能做什么,例如学生可以学习、考试、吃等等。
对象:是类中的具体事物。例如学生中的张三就是一个对象。
2.1、类和对象的关系
①类是抽象的,对一类事物的描述。
②对象是具体的,对一类事物的实例。
3、如何定义类
类的定义格式为: 关键字:class(小写)
例如: public class Student{
}
对象的创建: 关键字:new
例如:Student stu = new Student();
4、包
4.1包的作用:
①避免类名重复,有了包后,类的全称就位:包.类名
②可以控制某些类型或成员的可见范围
③分类组织管理众多的类
例如:
-
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)。
4.2如何声明包
关键字:package
package 包名;
ps:包名必须在源文件的首行,一个源文件只能有一个声明包的package语句。
4.3如何跨包使用类
只有public的类才能被跨包使用
(1)使用类型的全名称
例如:java.util.Scanner input = new java.util.Scanner(System.in);
(2)使用import 语句之后,代码中使用简名称
ps:
使用java.lang包下的类,不需要import语句,就直接可以使用简名称
import语句必须在package下面,class的上面
当使用两个不同包的同名类时,例如:java.util.Date和java.sql.Date。一个使用全名称,一个使用简名称
5、成员变量
5.1声明成员变量
【修饰符】 class 类名{
【修饰符】 数据类型 成员变量名;
}
例如:
public class Person{
String name;
char gender;
int age;
}
位置要求:必须在类中,方法外
类型可以是java任意数据类型,修饰符有很多,例如:public、protected、private、static、volatile、transient、final。
static将成员变量分为两大类,静态变量和非静态变量。其中静态变量又被称为类变量非静态变量又称为实例变量或属性。
5.2实例变量
特点:①必须通过对象才能访问实例变量
②每个对象的实例变量的值是独立的
实例变量的访问:实例对象.实例对象