简介:
创建类的模板
声明属性和方法
定义类的可见性
类的构造函数
源程序的布局
package语句的作用
导入外部类
1.1 面向对象的概念
在自然界中,存在着许许多多的对象,例如鸟类,动物等等,并且每一个类都拥有某些独有的特性。
在面向对象编程中,我们把这种独有的特性称为对象的特性。对象在本质上是真实世界中的实体。拥有
自己独有的行为,例如,鸟可以借助翅膀飞翔,那么飞翔便是描述对象的操作,我们将这类操作叫做
对象的方法。
类:创建模板来定义或者表征具有共同行为的对象,面向对象中的模板就称为‘类’。

1.2 使用类
class Point{
int x;
int y;
}
Point p = new Point();
new关键字实例化类,在new关键字之后,指定了类名,并紧跟一对括号,其中的括号对表明这个方法调用–调用构造函数
类一旦被实例化,类的对象就会被分配内存以保存数据,指向内存分配的引用必须被复制和保存在某处。从而使得
创建的对象可以在后面的程序代码中被访问到,在前面的声明中,我们把内存引用复制到了赋值运算符左边声明的变量p中,
变量p的类型为Point,表明p保存的是指向Point类型对象的引用。

代码演示:
import java.util.*;
class Point{
int x;
int y;
//计算当前点到原点的距离
double getDistance(){
return (Math.sqrt(x*x + y*y));
}
}
public class TestPoint {
public static void main(String[] args) {
System.out.println(“Creating a point object…..”);
Point pointer = new Point();
System.out.println(“Initializing object……”);
pointer.x = 3;
pointer.y = 5;
double distance = pointer.getDistance();
//StringBuilder 为了输出对象的内容及结果距离
StringBuilder sb = new StringBuilder();
Formatter formatter = new Formatter(sb,Locale.US);
formatter.format(“Distance of Point pointer(” + pointer.x + “,”
+ pointer.y + “) from origin is %.02f”,distance);
System.out.println(sb);
System.out.println();
//StringBuilder类中的delete方法用于清除对象内容,其中的第一个参数指定开始位置,指定要清除字符的数量
sb.delete(0, sb.length());
System.out.println(“Creating another Point object …”);
Point p2 = new Point();
System.out.println(“Initializing object …”);
p2.x = 8;
p2.y = 9;
distance = p2.getDistance();
formatter.format(“Distance of point p2(” + p2.x + “,” + p2.y +
“) from origin is %.02f”, distance);
System.out.println(sb);
}
}
1.3 对象的内存表示
Point p = new Point();
Point p1 = new Point();
Point p2 = new Point();
对于每一个变量声明,都会被分配一份独立的内存块。
这里写图片描述
1.4 信息隐藏
对于private访问修饰使得对应的字段,方法或类声明真正地对所属类私有。访问私有字段的唯一方法就是
使用操作该属性的public setter/getter方法,设置money为私有字段可以保护免受外部代码的意外干扰。
class Wallet{
private float money;
public void setMoney(float money){
this.money = money;
}
}
1.5 构造函数
创建构造函数的规则可以总结如下:
构造函数的名称必须与类名相同。
构造函数没有返回值,返回类型也并非void
构造函数可以包含0到多个参数
如果自己提供了构造函数,则编译器都不会再提供默认的构造器
构造无参构造函数
public Person(){
int x = 4;
int y = 6;
}
构造有参函数
int x,y;
public Person(int x,int y){
this.x = x;
this.y = y;
}
1.6 package语句
package语句可以让你将相关的类逻辑性地分组到单个独立单元中。包必须早于其他语句在源文件的开头进行声明。
import java.io.*;
import java.util.*;
总结
本文主要是对类做了简单的介绍,后续将会陆续对类进行深入探讨。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值