zoukankan      html  css  js  c++  java
  • 10.14动手动脑

    
    

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

    public class test 
    {
        public static void main(String[] args)
        {
            Foo obj1=new Foo();
        }
    }
    class Foo
    {
        int value;
        public Foo(int initValue)
        {
            value=initValue;
        }
    }

    这串代码,类Foo已经定义了构造函数,构造函数中有参数,当开辟新空间的时候需要进行初始化;

    没有构造函数的时候,系统会自动出没有参数的构造函数;

    2、public int field=100;在类初始化后面时

    public class test 
    {
        {
            filed=200;
        }
        public int filed=100;
        public test(int value)
        {
            this.filed=value;
        }
        
        public test()
        {
            
        }
        
        
        
        public static void main(String[] args)
        {
            a1 obj1=new test();
            System.out.println(obj1.filed);
            
            obj1=new test(300);
            System.out.println(obj1.filed);
        }
    }

     public int field=100;在类初始化前面时

    public class test 
    {
        public int filed=100;
        {
            filed=200;
        }
        
        public test(int value)
        {
            this.filed=value;
        }
        
        public test()
        {
            
        }
        
        
        
        public static void main(String[] args)
        {
           test obj1=new test();
            System.out.println(obj1.filed);
            
            obj1=new test(300);
            System.out.println(obj1.filed);
        }
    }

    Java字段初始化的规律 

        执行类成员定义时指定的默认值或类的初始化块(类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。),到底执行哪一个要看哪一个“排在前面”。执行类的构造函数。

    3、静态方法中只允许访问静态数据,那么,如何在静态方法中访问类的实例成员(即没有附加static关键字的字段或方法)

    class test
    {
        
    
        public static void main(String[] args)
        {
            Myclass m=new Myclass();
            m.output();
        }
        
    }
    class Myclass
    {
    int i=100;   
    static public void output()
    {
    Myclass a=new Myclass();   
    System.out.println(a.i);
    }
    }
  • 相关阅读:
    Android 废弃方法属性解决
    Android RecycleView分组
    Android 第三方库FlycoTabLayout
    Android 自定义dialog出现的位置
    Android 底部弹窗实现
    Android 自定义设置布局
    Android 微信、qq分享文本 (Intent)
    SpringBoot关于跨域的三种解决方案
    记录一次通用Mapper+自定义mapper出现的问题分析以及排查
    IDEA配置Maven+新建Maven项目
  • 原文地址:https://www.cnblogs.com/xjmm/p/11715912.html
Copyright © 2011-2022 走看看