Java面向对象基础--构造方法



只要一有对象实例化,就会调用此方法。



 

在整个JAVA的操作中,如果一个类中,没有明确的声明一个构造方法,则会自动产生一个没有参数的,什么都不做的构造方法,供用户使用。

 

 



 

构造方法的主要目的:就是为类中的属性进行初始化;



匿名对象:没有名字,在java中,如果一个对象只使用一次,就可以将其定义成匿名对象。

总结:

  对象在实例化的时候,必须调用构造方法;

  每个类中至少有一个构造方法;

  匿名对象,只开辟了堆内存的实例对象;

 

 

时间: 2024-09-21 11:34:03

Java面向对象基础--构造方法的相关文章

Java面向对象基础--构造方法私有化

1.对构造方法进行封装 class Singleton{ private Singleton(){ // 将构造方法进行了封装,私有化 } public void print(){ System.out.println("Hello World!!!") ; } }; 2.使用 被私有化构造方法的Singleton类,不能在外部直接实例化. class Singleton{ private Singleton(){ // 将构造方法进行了封装,私有化 } public void pri

JAVA面向对象之构造方法

一.构造方法 在上一篇博客<JAVA面向对象之对象和类>中用到了Box box = new Box();语句来创建一个对象,new可以理解成创建一个对象的关键字,通过new关键字为对象分配内存,初始化实例变量,并调用构造方法.Box()在形式上和调用方法的形式相同,这个Box()就是一个特殊的方法叫构造方法.但是我们在代码中并没有看到这个方法的定义,是因为在没有定义构造方法的时候,JAVA会隐式的创建一个无参的默认构造方法,构造方法有以下特征: 具有和类相同的名称. 不含有返回值 不能在方法中

Java面向对象基础--类的设计及分析问题的方法---用户登录例子

1.用户登录的示例 首先要做的就是先把功能实现: public class LoginDemo01{ public static void main(String args[]){ if(args.length!=2){ // 应该判断输入的参数个数是否是2 System.out.println("输入的参数不正确,系统退出!") ; // 给出一个正确的格式 System.out.println("格式:java LoginDemo01 用户名 密码") ; Sy

Java面向对象基础---名词概念的理解:方法的重载、构造函数、封装性

方法的重载:方法名称相同,但参数的类型和个数不同,通过传递参数的个数及类型不同以完成不同功能的方法调用. 例如:System.out.println();属于方法的重载. 方法的重载一定是根据参数类型和个数来判断的. 构造函数:构建创造对象时调用的函数.作用:可以给对象进行初始化.Tip:函数名与类名相同,不用定义返回值类型,没有具体的返回值.   面向对象特征:1.封装(encapsulation)对外部不可见,保护程序的某些内同.2.继承性(inheritance)扩展功能.3.多态(pol

Java面向对象基础--链表的改进

采用内部类完成链表的操作 1.增加节点,在链表的最后进行增加 class Link{ // 链表的完成类 class Node{ // 保存每一个节点,此处为了方便直接定义成内部类 private String data ; // 保存节点的内容 private Node next ; // 保存下一个节点 public Node(String data){ this.data = data ; // 通过构造方法设置节点内容 } public void add(Node newNode){ /

Java面向对象基础--this关键字的解析

this关键字的作用: 1.表示类中的属性. class Person{ // 定义Person类 private String name ; // 姓名 private int age ; // 年龄 public Person(String name,int age){ // 通过构造方法赋值 this.name = name ; // 为类中的name属性赋值 this.age = age ;// 为类中的age属性赋值 } public String getInfo(){ // 取得信息

Java面向对象基础--代码块

1.普通代码块 public class CodeDemo01{ public static void main(String args[]){ { // 普通代码块 int x = 30 ; // 就属于一个局部变量 System.out.println("普通代码块 --> x = " + x) ; } //int x = 100 ; // 与局部变量名称相同 System.out.println("代码块之外 --> x = " + x) ; }

Java面向对象基础--对象数组

对象数组的声明 类名 对象数组名称 [] = new 类[数组长度]: class Person{ private String name ; // 姓名属性 public Person(String name){ // 通过构造方法设置内容 this.name = name ; // 为姓名赋值 } public String getName(){ return this.name ; // 取得姓名 } }; public class ObjectArrayDemo01{ public st

Java面向对象基础--引用传递分析

class Demo{ int temp = 30 ; // 此处为了方便,属性暂时不封装 }; public class RefDemo01{ public static void main(String args[]){ Demo d1 = new Demo() ; // 实例化Demo对象,实例化之后里面的temp=30 d1.temp = 50 ; // 修改temp属性的内容 System.out.println("fun()方法调用之前:" + d1.temp) ; fun