zoukankan      html  css  js  c++  java
  • 类与对象

     类与对象

    1、以下代码为何无法通过编译?哪儿出错了?

     

    截图:

    错误原因:构造方法与类名相同,系统已经由一个默认构造函数,给他设置一个形参即可。

    2、使用上页幻灯片中定义的类,以下代码输出结果是什么?

     

    请依据代码的输出结果,自行总结Java字段初始化的规律。

    运行结果:

    规律:初始化有两块:静态初始化和实力初始化。执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。执行类的构造函数。

    3、当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。

    请自行编写示例代码验证以上结论。

    代码:package hhhh;

    class StaticDemo{

    static int x;//静态变量x

    int y;//实例变量 y

    static public int getX()

    {

    return x;

    }

    static public void setX(int newX)

    {

    x=newX;

    }

    public int getY()

    {

    return y;

    }

    public void setY(int newY)

    {

    y=newY;

    }

    }

    public class ShowDemo {

    public static void main(String[] args)

    {

    // TODO Auto-generated method stub

    StaticDemo pro=new StaticDemo();

    System.out.println("静态变量x="+StaticDemo.getX());

    System.out.println("实例变量y="+pro.getY());//false

    StaticDemo a=new StaticDemo();

    StaticDemo b=new StaticDemo();

    a.setX(1);

    a.setY(2);

    b.setX(3);

    b.setY(4);

    System.out.println("静态变量a.x="+a.getX());

    System.out.println("实例变量a.y="+a.getY());

    System.out.println("静态变量b.x="+b.getX());

    System.out.println("静态变量b.x="+b.getY());

    }

    }

  • 相关阅读:
    PAT顶级 1024 Currency Exchange Centers (35分)(最小生成树)
    Codeforces 1282B2 K for the Price of One (Hard Version)
    1023 Have Fun with Numbers (20)
    1005 Spell It Right (20)
    1092 To Buy or Not to Buy (20)
    1118 Birds in Forest (25)
    1130 Infix Expression (25)
    1085 Perfect Sequence (25)
    1109 Group Photo (25)
    1073 Scientific Notation (20)
  • 原文地址:https://www.cnblogs.com/jingjing0629/p/4887669.html
Copyright © 2011-2022 走看看