三、Java 类和对象

类和对象

究其本质,类就是一段代码的名称,其中包括很多保存数据值的字段和操作这些值的方法。

3.1 定义类

我们定义一个Point类

public class Point {
    public double x, y;  //点坐标(x ,y)
    public Point(double x, double y) {  // 类的构造函数
          this.x=x;
          this.y=y;
    }
    public double distanceFromOrigin() {  //类的方法
        return  Math.sqrt(x*x + y*y);
    }
}

这个类的定义会保存在名为Point.java的文件中,然后编译成一个名为Point.class的文件,供Java程序和其他类使用。

3.2 创建对象

在工程中定义Point类后,Point在本工程代码项目成为一种新的数据类型。
可以用它创建对象并实例化它

----------第一种创建方式----------
Point p;  //只是声明了以名为p的Point类型的对象,并不会创建它;
p =new Point(2,-4);  //创建一个Point对象,值为(2,-4)
---------第二种创建方式----------
Point p = new Point(2, -4); //创建一个Point对象,值为(2,-4)

3.3 使用对象

Point p = new Point(2, 3); //创建一个对象
double x = p.x;            //读取这个对象的一个字段
p.y = p.x * p.x;           //设定一个字段的值
double d = p.distanceFromOrigin();  //访问这个对象的一个方法

3.4 对象字面量

一、字符串字面量

String类使用一串字符表示文本,在任何编程语言中处理文本字符串的能力都十分重要,在Java中字符串是对象。

String name = "David"; //把字符放在双引号(")中,就是定义一个字符串
System.out.println("Hello" + name);

字符串字面量不能包含注释,不支持把两行当成一行的任何接续字符,只能有一行

//不可行
String s = "This is Test, for you
             to learn";
//正确
String s = "This is Test, for you" +
             "to learn";
二、类型字面量

支持专用对象字面量句法的类型是Class类,Class类的实例表示一种Java数据类型,而且还包含所表示类型的元数据,使用Class对象字面量,在数据类型名称后加 .class

Class<?> typeInt = int.class;
Class<?> typeIntArray = int[].class;
Class<?> typePoint = Point.class;
三、null引用

null引用是一种特殊的字面量,引用不存在的值或者不引用任何值。

String s = null;
Point p = null;

3.5 lambda表达式

lambda表达式就是没有名称的函数,在Java中可以把它当成一个值,lambda表达式是在某个类中定义的匿名方法(开发者可能不知道具体是哪个类)

lambda表达式的句法如下:
  (paramlist) -> { statements }
复杂一点点的实例:
 ActionListener listener = (e) -> {
    System.out.println("Event fired at: "+ e.getWhen());
    System.out.println("Event command: " + e.getActionCommond());
  };
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值