Java--抽象和构造函数

抽象(abstract)

1.如何从现实世界中抽象出类?(使用类描述事物)
①找出它的种类(发现类)定义类
②找出它的属性(发现类的属性)定义变量
③找出它的行为(发现类的方法)定义方法

2.抽象类:
①类:创建对象的模板 是对多个对象公共信息的抽取 用来描述事物的
②抽象类:用来描述事物的 在描述事物的时候 发现不能使用具体的方式描述时使用抽象类描述
③抽象:看不懂 模糊 不具体的

抽象类的特点:抽象类是被abstract修饰的类
a:抽象类中要想使用,必须有子类继承抽象类,并实现父类中的所有的抽象方法,否则该子类也是抽象类
b:抽象类中可以有抽象方法也可以没有
c:抽象类可以有一般方法
d:抽象类不能实例化对象(java和C#通过这个特点使用抽象类限制实例化)
f:抽象类有构造函数,作用是给子类实例化时初始化属性的,可以被继承

抽象方法的特点
a:抽象方法是一个不完整的方法,没有方法体
b:抽象方法一定是在抽象类,抽象类不一定有抽象方法(接口中的方法一定是抽象方法)(抽象方法必须在子类中被实现,除非子类是抽象类)
c:要用abstract修饰

3.抽象的原则是什么?
发现类 发现共同的属性 发现共同的行为 (只放业务相关的)

4.abstract 关键字和哪些关键字不能共存。
①final:被final修饰的类不能有子类(不能被继承)。而被abstract修饰的类一定是一个父类(一定要被继承)。
②private: 抽象类中的私有的抽象方法,不被子类所知,就无法被复写。 而抽象方法出现的就是需要被复写。
③static:如果static可以修饰抽象方法,不用对象,直接类名调用就可以了。这样抽象方法运行没意义。

构造函数

1.构造方法:(没有返回值)!!!!!

访问修饰符 构造方法名[与类名相同] ([可指定参数]){
	[初始化代码]
}

2.构造方法的作用和特点是什么?
①作用:当一个类的实例对象刚产生时,这个类的构造方法就会被自动调用,可以在这个方法中添加要完成的初始化工作的代码
②特点:
(1)构造方法名一定与类同名
(2)无返回值类型(void也不行),构造方法可以没有(默认有一个无参的,这个构造方法被称为缺省构造器)也可以有多个(多个之间构成重载关系)
(3)如果定义有参构造函数则默认的无参构造函数自动被屏蔽
(4)不能被继承(所以不能被重写)
(5)不能手动调用,在创建类实例的时候自动调用构造方法

3.构造函数能否在创建对象的同时完成赋值?
可以

4.构造方法执行结束之后,有返回值吗?
每一个构造方法执行结束后都有返回值,但是这个retuen 值,这样的语句不需要写。构造方法结束之后,Java程序自动返回值,并且返回值类型是构造方法所在类的类型,由于构造方法返回值类型就是本身,所以返回值类型不需要编写

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值