Java学习之,总结乎——类和对象

本文介绍了Java编程的基础概念,包括类和对象的区别与联系、不同访问权限的作用范围、setter/getter方法的意义、方法重载及构造器的应用场景,以及this关键字的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[size=small][b]public class LanjieStudent {
private String name1="老师";
private String name2="蓝杰学员";
private String net="http://www.iteye.com";

public void study(){
System.out.println(name1+"说:"+name2+"要经常访问"+net+",并在上面写博客!");
}
}
public class Manager {
public static void main(String[] args) {
LanjieStudent lan=new LanjieStudent();
lan.study();
}
}[/size]
[/b]
[size=small]通过写博客的方法,把所学习的知识按照自己的思路进行总结,这很好。

在蓝杰学习已经一周了,蓝杰的课程很重视实践,是实践中贯穿着理论的讲解,所以刚开始听课感觉似懂非懂,并且课程进度很快,经过努力,终于明白一点了,以下便是:[/size]

[size=medium][b]1>、类和对象[/b][/size]

[size=small]Java是面向过程与面向对象的编程:

面向过程是指按步骤针对事件、问题描述,然后逐步解决。
面向对象体现的是产生行为的各对象之间的相互关系。

而类就是面向对象的一个核心机制。

类就好比一个模板,对象就是这个模具刻出来的产品。并且我们可以在类里面定义属性和方法,供生成的对象调用。

所以,类是具有相同属性和方法的一组对象的集合,是抽象出来的概念,而对象是这个抽象说明的类的一个具体情况。

定义类需要用calss关键字,如:
Public class 类名{}

创建对象需要使用这个对象所属的类并用new关键字来实例化。如
New 类名()[/size]


[size=medium][b]2>、管理权限public> protected > default > private[/b][/size]

[size=small]这是Java中的四类管理权限:
Public(公共访问权限)权限具有最大的权限,其可以修饰类以及类中的成员变量、函数。其修饰的类、成员、函数可以随便被其他类调用。
Protected(子类访问权限)不能修饰类,可以修饰类中的成员变量、函数。只能被其所在类的子类调用,且可以跨包使用。
Default(包访问权限),即默认类型(如果不添加权限修饰符)。不能跨包,只能被其类所在包中的其他类访问。
Private(类访问权限),只能修饰成员变量、函数,只能被当前类中访问。[/size]

[size=medium][b]3>、settter/getter方法[/b][/size]

[size=small]如果我们定义的成员变量是Private类型,这个时候在其他类中要调用,我们就得定义setter/getter方法:
Public void setN(String n){
This.n=n;
}
/*N为变量名*/
Public String getN(){
return n;
}
之所以不直接定义成Public类型,很大程度上是为了方便权限的控制。[/size]

[size=medium][b]4>、方法的重载与构造器[/b][/size]

[size=small]Java中方法的重载需要满足以下几个条件:
(1)方法名一样;(2)方法在同一个类中;(3)方法的形参列表不同(个数、类型、顺序)

方法的重载的作用:
不用为了应对不同的参数类型或参数个数,而写多个函数。多个函数用同一个名字,但参数表不完全相同(大小写敏感),调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。这样我们在调用的时候,就不需要记那么多的方法名称,而是知道了方法的功能就可以直接的给他传递不同的参数,编译器会明确的知道我们调用了哪一个方法。


public void study(){
System.out.println("学生都要自习!");
}
/*以下便是study 方法的重载*/
public void study(int time){
System.out.println("学生正在上课,需要上课:"+time+"分钟!");
this.study(); /*study方法的调用*/
}


Java中构造器条件:
(1) 类中的构造函数名与类名一样;(2)构造函数没有返回值类型;(3) 构造函数也可以实现重载;(4) 在默认情况下,系统会给每一个类自动生成一个构造函数。但是如果人为的定义了构造函数的话,系统就不会自动生成构造函数了。

public Student(){
this("王五"); /*只能由构造器调用构造器,初始化name值*/
}
/*以下便是student类的重载*/
public Student(String name){
this.name=name;
}


构造器的作用:生成对象,并且我们可以对对象进行初始化。[/size]

[size=medium][b]5>、this关键字[/b][/size]

[size=small]This主要有两个用途:
1、 表示当前对象的引用,指代;特别是当函数参数名和成员变量同名时,用this进行区分,这是比较常用的一种情况。
public class Student{
String name;

Public Student(String name){
This.name=name /* 这个this就是指代的student类中的st对象*/
}
}

String name =”未知”;
Student st=new String(name);

2、 方法、构造器进行互相调用,
方法的调用格式为 this.方法名
构造器调用格式为 this(参数)

Public class student{

public student(){
This(“王五”) /*调用第二个构造器,初始化name属性值*/
}
public student (String name){
This name=name; /*指代对象*/
This(name,90); /*调用第三个构造器,初始化name、score的值*/
}
public student (String name,int score)
this name=name; /*指代对象*/
this score=score; /*指代对象*/
}
[/size]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值