面向对象概念及构造器详解!(面向对象 概念)

  本篇文章为你整理了面向对象概念及构造器详解!(面向对象 概念)的详细内容,包含有面向对象的结构 面向对象 概念 面向对象概述 面向对象结构图 面向对象概念及构造器详解!,希望能帮助你了解 面向对象概念及构造器详解!。

  面向独享是用分类的思维模式,思考解决问题需要哪些分类,然后对这些分类进行单独的思考。最后,才对分类的某个细节进行面向过程的探索

  
面向对象适合处理复杂的问题,适合处理需要多人协作的问题

  还是以把大象放进冰箱举例

  面向对象的分析过程:

  第一步:把动作的实体抽象出来,主体,有人,冰箱,大象

  第二步:定义主体,为主题添加对应的功能和属性

  ​ 人,需要有打开,关闭冰箱的功能,以及放大象进冰箱的功能

  ​ 冰箱,需要有开门,关门的属性

  ​ 大象,需要有能放进入冰箱的功能

  
使用new关键字创建对象的时候,除了分配内存空间之外,还会给创建好的对象进行默认化的初始值以及对类中构造器的调用

  代码示例:类中只能有属性和方法

  

package com.oop.Demo02;

 

  //学生类

  public class Student {

   //属性:字段

   String name;

   int age;

   //方法

   //this代表当前的类,用于本类的方法中使用本类的属性

   public void study(){

   System.out.println(this.name+"在学习");

  

 

  我们在定义了类之后,要在main方法中去调用,这时候,我们就应该创建一个测试类,或者应用类,这个类用来调用这个项目中所有类的方法和属性,一个项目应该只存在一个main方法

  eg:

  

package com.oop.Demo02;

 

  //一个项目应该只存在一个main方法

  public class Test {

   public static void main(String[] args) {

   //类是抽象的,需要实例化,通过new来实例化

   //类实例化后会返回自己的对象

   //student对象就是一个Student类的具体实例

   Student daughter=new Student();

   daughter.name="阿尼亚";

   daughter.age=5;

   System.out.println(daughter.name);

   System.out.println(daughter.age);

  

 

  输出:

  

阿尼亚

 

  

 

  类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:

  1.必须和类的名字相同

  2.必须没有返回类型,也不能写void

  


 

 

  可以看出我们在上面的Animal类中是什么都没写的,然而实例化看一下class文件可以看出

  Animal.class:

  

package com.oop.Demo02;

 

  public class Animal {

   public Animal() {

  

 

  可以看出在class中已经生成了一个class文件

  一个类中即使什么都不写,也会存在一个方法

  而我们看一下无参构造和有参构造

  上述,自动生成的方法就是一个无参构造方法,我们自己写一下看,

  无参构造:

  

public class Animal {

 

   //属性 name

   String name;

   //无参构造

   public Animal() {

  

 

  调用一下无参构造的方法:

  

public class Application {

 

   public static void main(String[] args) {

   //new 实例化了一个对象

   Animal animal=new Animal();

   animal.name="bangde";

   System.out.println(animal.name);

  

 

  输出:

  

bangde

 

  

 

  即使我们不加这个无参构造,输出也能得到自己想要的,因为上文说过编译器会自动生成一个午餐的构造方法。

  有参构造:

  

public class Animal {

 

   //属性 name

   String name;

   //有参构造

   public Animal(String name) {

   this.name = name;

  

 

  加有参构造之后,我们可以看到,刚才实例化的对象,已经开始报错了!

  插入图片:
 

  那是因为,我们创建了有参构造方法之后,编译器便不会为我们生成无参的构造方法了,这时如果我们还想要有无参的构造方法,需要自己再写一个无参的构造方法!

  

public class Animal {

 

   //属性 name

   String name;

  // 无参构造

   public Animal() {

   public Animal(String name) {

   this.name = name;

  

 

  这是程序可以正常运行,那如果我们想调用无参的构造方法,只需,给方法传入对应的参数即可!

  

public class Application {

 

   public static void main(String[] args) {

   //new 实例化了一个对象

   Animal animal=new Animal();

   animal.name="邦德";

   System.out.println(animal.name);

   Animal animal2=new Animal("汪汪");

   System.out.println(animal2.name);

  

 

  当然,我们再idea中,也是有快捷键去生成有参和无参的构造方法的快捷键的。

  当在类中定义过属性之后

  只需,按住ALT+INSERT键,点击Constructor,然后选中想要创建有参构造方法的属性即可生成有参的构造方法,如果方法中想包含多个属性,按住ctrl键,然后点击多个即可!

  
 

  如果想生成无参的构造方法,点击过Construcor之后点击select None即可

  插入图片:

  以上就是面向对象概念及构造器详解!(面向对象 概念)的详细内容,想要了解更多 面向对象概念及构造器详解!的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: