1.类的概念
包:一些接口和类集合在一起,方便使用,类似c语言的头文件
使用import关键词,将所用的包导入
类:【修饰符】class 类名{类体}
类中包含构造函数 ,对象(变量),方法等
在一个程序中,只有一个pubic类,有一个主类中有main接口,是主程序的接口进入
类,用来写一整块的功能
【修饰符】包括public,private,abstract等
class Student
{
public int height;
private int id;
private String name;
private int score;
}
构造函数:分为无参构造和有参构造
构造函数是为了初始化变量,例如:建立了一个student类,自然要有年龄,名字,成绩的初始值
public Student(int id,String name,int score)
{
this.id=id;
this.name=name;
this.score=score;
}
public Student()
{
}
上面为有参构造,下面为无参构造
注意:构造函数没有返回值类型,名字和类名相同,可以被重载
方法 :【修饰符】返回值 方法名(形参,实参){方法体}
public void setId(int id)
{
this.id=id;
}
public int getId()
{
return id;
}
相当于C语言中的函数,用于实现某个特定的功能
其中get,set函数,主要用来设置和获取私有变量的值,在继承和多态中,因为继承不能继承私有变量,可以通过get,set函数进行获取
2.常用类
在Java中有很多已经被设定好的类,在api的文档中,可以被调用。来简化使用的麻烦
如何调用类中的方法,先将类进行实例化(就是下列代码)实例化之后,进行 .方法的调用
Student st1=new Student(1,"小亮",89);
Student st2=new Student(2,"小明",78);
Student st3=new Student(3,"小工",90);
Student st4=new Student(4,"小红",99);
主要的类有:String类Scanner类object类Arrays类等
具体参照以下链接
3.集合
(其实就是类似与数据结构)
(1)集合有两个父接口 Collection、Map
(2)Collection有两个子接口 List、set
(3)List有两个常见的实现类 ArrayList、LinkedList
(4)Set有两个常见的实现类 HashSet、TreeSet
(5)Map有两个常见的实现类 HashMap、HashTable
原文链接:https://blog.csdn.net/weixin_52071901/article/details/131180697
4.抽象类,接口,多态 ,继承,重写,重载
(相对于C语言加的一些新的概念)
抽象类:是指含有没有具体实现方法(只有方法头,没有方法体)的类,用abstract关键字 来进行识别
abstract class Animal {
// 抽象方法,没有方法体
abstract void makeSound();
// 非抽象方法,有方法体
void sleep() {
System.out.println("Zzz");
}
}
注意:抽象类不能被实例化,只能够被继承,继承的子类要实现父类(抽象类)的全部方法
可以包含非抽象类 一个类只能实现一个抽象类,
接口:抽象方法的集合,用interface和implement关键字来进行识别
因为类只能单继承,有了接口,可以有一个类可以实现多个接口,增加了灵活性
package intrFace;
public interface AreaInterface{
double pai=Math.PI;
double area();
}
package intrFace;
public class Circle implements AreaInterface{
double r;
public Circle(double x){
r=x;
}
//实现接口中的抽象方法,求圆面积
public double area(){
return pai * r * r;
}
public String toString(){
return "圆:r="+r+"\tarea="+area();
}
}
注意:接口并不等同于类,不能够实例化,实现接口要实现其中所有的方法,
不能包含非抽象方法,一个类可以实现多个接口
继承:可以设置一个新的类,从一个已经存在的类中拥有他的属性和方法,这个新的类叫做子类,被继承的类叫做父类,用extends关键词,利用super访问父类的变量,
可以重写父类的方法,可以增加新的属性,可以实现父类的抽象方法
多态:是使得不同的对象使用同一个方法时产生不同的效果,有三个限制:继承关系,重写,用父类引用指向子类对象
class Animal {
public void sound() {
System.out.println("动物发出声音");
}
}
class Dog extends Animal {
@Override
public void sound() {
System.out.println("狗发出汪汪声");
}
}
class Cat extends Animal {
@Override
public void sound() {
System.out.println("猫发出喵喵声");
}
}
public class Main {
public static void main(String[] args) {
Animal animal1 = new Dog(); // 父类引用指向子类对象
Animal animal2 = new Cat(); // 父类引用指向子类对象
animal1.sound(); // 输出:狗发出汪汪声
animal2.sound(); // 输出:猫发出喵喵声
}
}
重写:对于同一个方法,进行不同的方法体改变,实现不同的功能,
在子类继承自父类的方法中,返回值类型,方法名,参数列表都要和父类的方法相同,修饰符等级子类要在父类之上
重载:对于一个方法,实现不同的功能,在同一个类中,方法名要和原来方法相同,返回值,参数列表要不一样
标签:java,基础,接口,id,Student,父类,方法,public From: https://blog.csdn.net/2301_81768491/article/details/138580179