Java中类和对象概述

目录

前言:

一.初步了解类和对象

1.1什么是面向对象?

1.2什么是类和对象?

​二.类的定义与使用

2.1类的格式与定义

2.2对象的创建与使用

 三.this关键字的使用

3.1this的使用方法

3.2this引用的特性

 四.类的构造方法

 五.静态变量和静态方法


前言:

小编也是第一次写blog,可能有很多地方还做的不够好,但希望精心整理出来的内容对有需求的人有所帮助。

一.初步了解类和对象

1.1什么是面向对象?

Java是一门纯面向对象的语言,在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。

1.2什么是类和对象?

类是同一类事物的统称,如果将现实世界中的一个事物抽象成对象,类就是这类对象的统称,而对象就是某一类中具体的事物。比如,鸟是表述地球上所有的鸟的一个类,它包含所有的鸟,而其中的麻雀,鸽子,燕子等就是其中的对象。

二.类的定义与使用

一个类可以包含多个对象,同时,作为一个对象可以拥有多个属性及行为,例如,麻雀有翅膀,四肢,羽毛,喙等,都属于成员变量,麻雀可以飞翔,吃,喝水等行为称为成员方法。在Java中,我们把对象的属性及行为称为成员变量和成员方法。

2.1类的格式与定义

类的定义需要用到class关键字,具体方法如下:

classs ClassName{
    field;//属性,成员变量
    method;//行为,成员方法
}

 class是定义类的关键字,ClassName是类的名字,{}中包含类的主体

注意:

1.类名一般采用大驼峰定义

 2.一般一个文件夹定义一个类

3.main方法所在的类一般用public修饰

 4.public修饰的类要与文件名相同

public class Bird(){
    String name;//名称
    String wing;//翅膀
    String clow;//爪子
    String beak;//喙
    String feather;//羽毛
    public void fly(){
    system.out.println(name+"可以进行飞翔");
    }
}

这里定义了一个Bird类,从名称到羽毛都是属于成员变量,fly则是成员方法,一个类则是由这两部分组成。

2.2对象的创建与使用

当我们写好了一个类,就相当于在计算机中定义了一种新的类型,与int,float类似,只不过类是用户自定义了一个新的类型。当我们定义好了一个Bird类,有了这个自定义的类型之后,我们就可以使用这个类来定义实例(或者称为对象)。

我们使用new关键字进行创建对象。

例如我们定义一个包含姓名和年龄的学生类:

public class Student{
	public String name;//姓名
	public int age;//年龄
	public void introduce() {
		System.out.println("我的名字是"name+","今年"+age+"岁");
	}
	public static void main(String[] args) {
		Student s1=new Student();
		s1.name="小帅";
		s1.age=18;
		s1.introduce();
	}
}

注意:
1.new 关键字用于创建一个对象的实例
2.使用 . 来访问对象中的属性和方法
3.同一个类可以创建多个实例

 三.this关键字的使用

3.1this的使用方法

this关键字用于描述本类当前的对象,当前对象不是某个new出来的实体对象,而是当前正在编辑的类,this只能在本类中使用。

如定义一个图书类:

public class Book{
    private STring name;
    public String getName(){
    return name;    
    }
    public void setName(String name){
    this.name=name;
    }
}

成员方法setName()中的形式参数的名称相同,均为name,那么如何区分类中使用的是哪一个变量?这时候就需要用到this关键字来进行分别。

this表示本类对象的引用,this关键字被隐式的用于引用对象的成员变量和方法。上述类中,this.name指的就是Book中的成员变量,而右边的第二个name指的就是形参name,实际上,setName()的功能就是将形参name的值赋予成员变量name。

3.2this引用的特性

注意:
this的类型:对应类类型引用,即哪个对象调用就是哪个对象的引用类型
this只能在"成员方法"中使用
在"成员方法"中,this只能引用当前对象,不能再引用其他对象
this是“成员方法”第一个隐藏的参数,编译器会自动传递,在成员方法执行时,编译器会负责将调用成员方法对象的引用传递给该成员方法,this负责来接收

 四.类的构造方法

 在类中,除了成员方法以外,还存在一种特殊的方法,就是构造方法,构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的。

//构造方法的格式:
public className(){
    ~~~      //构造方法体
}

这里需要注意的是:

1.构造方法无返回值

2.构造方法的名称要与本类的名称相同

3.如果没有明确构造函数,则类会自己创建一个不带参数的默认构造方法

上述Book类,没有明确构造函数,则由系统自己生成一个不带参数的构造函数,如下:

public Book(){
    
}

里面是null,为空值

以上是不带参的构造方法,那我们同时也可定义带参的构造方法。

例:小帅去KFC买可乐,店家默认如果客人不说需要加冰的话只+一块冰,当小帅说+三块冰的时候店家加三块冰。

public class Ice {
	public int icecount=1;
	Ice(){    //不带参的构造方法
		System.out.println("当顾客无要求时,默认加"+icecount+"个冰块");
	}
	Ice(int icecount){    //带参的构造方法
		this.icecount=icecount;
		System.out.println("当提出要求时,要求加"+icecount+"个冰块");
	}
	public static void main(String[] args) {
		Ice s1=new Ice();//顾客s1无提出要求
		Ice s2=new Ice(3);//客人s2要求加三个冰块

	}

}

这里的两个Ice就分别是一个不带参的构造方法和带参的构造方法

五.静态变量和静态方法

static修饰的变量和方法称为静态变量和静态方法,又或者称为类变量和类方法。无static修饰的方法称为实例方法。

类方法只能调用类方法,不可调用实例方法。

实例方法既可调用类方法也可调用实例方法

 被声明为static的变量和方法被称为静态成员,静态成员属于类所有,区别于个别对象,可以在本类或者其他类使用类名和“.”运算符调用静态成员,语法如下:

类名.静态类成员

例如:创建一个StaticDemo类,在类中使用static关键字定义一个属性和一个方法,并在主方法中调用。

public class StaticDemo{
    static double pi=3.1415;        //定义静态变量
    public static void method(){
    System.out.println("这是静态方法");    //定义静态方法
    }
    public static void main(String[] args){
    System.out.println(StaticDemo.pi);//调用静态变量
    StaticDemo.method();//调用静态方法
    }
}

静态变量与静态方法的作用通常是为了提供共享数据或方法。

关于static关键字需注意的几点:

1.静态方法中不可使用this关键字

2.静态方法中不可直接调用非静态方法

3.局部变量不可使用static关键字声明

4.主方法必须用static声明

5.只有内部类才可以使用static关键字声明

结语:分享就到这里了,如若作者有什么错误或者描述不清的地方,欢迎大家进行批评指正(求生欲很强,害怕网络暴力,大家轻点喷)

  • 29
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值