初学Java之类与对象

@[Java编程]

类与对象

类与对象是面向对象编程的概念,在面向对象编程中最重要的就是类和对象。

例如作为一个学生,他/她有学号和姓名和性别,这是他的属性,但是每次定义学生,都需要重新定义这三个变量,就很麻烦,所以我们能不能自创一个数据类型Student,就像int那样使用呢?
是可以的,面向对象中的类class帮我们实现。

如何定义class?

class 类名{
所含变量定义;
}
class Student{
String name;
String sex;
int sno;
}

如何通过类实例化对象

类名 对象名 = new 类名();
Student std =new Student();

Student std;
std=new Student();
其中的Student()叫做构造方法,在类中默认有一个无参的与类名相同的构造方法。

如何访问对象中的成员变量?

对象名.成员变量名
std.name
有时候成员变量是私有变量
private String name,这时候就要设置set和get方法来进行取值和赋值
public void setName(string n){
name=n;
}
若public void setName(string name){
this.name=name;//就近原则,this关键字,表示本类对象
}
public String getName(){
return name;
}

如何定义和使用成员函数

例子:
(1)class Student{
String name;
String sex;
int sno;

public void study(){
System.out.println(name+“正在学习”);
}
public class lizi1{
public static void main(String[] args){
Student std = new Student();
std.name=“张三”;
std.study();
}
控制台打印:
张三正在学习。
(2)带参数的成员函数
class Student{
String name;
String sex;
int sno;

public void init(String n,String s,int n){
name=n;
sex=s;
sno=n;
}
}
public class lizi1{
public static void main(String[] args){
Student std = new Student();
std.init(“张三”,“男”,190120);
}
}
加上输出后,控制台显示 张三,男,190120
(3)带返回值类型的成员函数
比如写一个计算器类,传入一个参数,返回其绝对值
class calc{
int abs(int a){
return a>0?a:-a;
}
}
public class lizi2{
public static void main(String[] args){
Calc c=new Calc();
int result =c.abs(-10);
System.out.println(“result=”+result);
}
}

如何定义和使用构造函数

构造函数对于对象进行初始化,以及对象属性进行修改具有重要意义,为此我们应该如何编写构造函数?

构造函数也是一种函数,但是在构造时必须遵守以下规则:
1、函数名字与类名相同。
2、不含返回类型
定义完构造函数之后,在实例化对象时,就必须传入相应的参数列表,否则报错。
使用方法是:
类名 对象名= new 类名(传给构造函数的形参列表);
例如:
class Customer{
String name;
String sex;
int age;

Customer(String name,String sex,int age){
this.name=name;
this.sex=sex;
this.age=age;
}
void display(){
System.out.println(“name”+name);
System.out.println(“sex”+sex);
System.out.println(“age”+age);
}
}
public class lizi3{
public static void main(String[] args){
Customer zhangsan=new Customer(“张三”,“男”,18);
zhangsan.display();
}
}
控制台则会打印
name=张三;
sex=男;
age=25;

在一个类中如果没有定义构造函数,系统会自动为这个类产生一个默认的构造函数,无参数,也不做任何事情。此时创建对象必须通过:
类名 对象名= new 类名();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值