zoukankan      html  css  js  c++  java
  • Java、IDEA笔记

    1. 一个java文件A里面只能有一个public类B,且A的文件名需要和B的类名相同
    2. Mytest里面有main方法,需要用到MyCycle类和UniCycle类,我们需要把MyCycle类和UniCycle类打包成一个package。在这两个类的首行写package com.pxz.cycle;包名需要和包内java文件层次相同。在idea中,文件层次是在定义包名时自动生成的。比如包名com.pxz.cycle,idea就会生成com/pxz/cycle这样的文件结构。
    3. 在idea的settings中,可以设置自动添加包和自动移除包。
      这里写图片描述
    4. 多态基本概况
    //Mytest.java
    public class Mytest {
        static void fun(Super s) {
            System.out.println("s.v=" + s.v);
            System.out.println("s.getV()=" + s.getV());
        }
        public static void main(String args[]) {
            Super s1 = new Sub();
            fun(s1);
            Sub s2 = new Sub();
            fun(s2);
            Super s3 = new Super();
            fun(s3);
        }
    }
    class Sub extends Super {
        public int v = 1;
        public int getV() {
            return v;
        }
    }
    class Super {
        public int v = 0;
        public int getV() {
            return v;
        }
    }
    s.v=0           //字段没有多态,由函数传入参数的类型决定
    s.getV()=1      //方法有多态,由参数本身类型决定
    s.v=0           //字段没有多态,由函数传入参数的类型决定
    s.getV()=1      //方法有多态,由参数本身类型决定
    s.v=0
    s.getV()=0
    1. 成员变量和静态方法不能进行多态
    //Mytest.java
    public class Mytest {
        public static void main(String args[]) {
            Super s1 = new Sub();
            System.out.println("s1.v=" + s1.v);
            System.out.println("s1.getV=" + s1.getV());
            s1.getString();
    
            Super s2 = new Super();
            System.out.println("s2.v=" + s2.v);
            System.out.println("s2.getV=" + s2.getV());
            s2.getString();
    
            Sub s3 = new Sub();
            System.out.println("s3.v=" + s3.v);
            System.out.println("s3.getV=" + s3.getV());
            s3.getString();
        }
    }
    class Sub extends Super {
        public int v = 1;
        public int getV() {
            return v;
        }
        public static void getString() {
            System.out.println("Sub");
        }
    }
    class Super {
        public int v = 0;
        public int getV() {
            return v;
        }
        public static void getString() {
            System.out.println("Super");
        }
    }
    s1.v=0          //字段没有多态,由定义对象类型决定(new前面的类型)
    s1.getV=1       //方法有多态,由对象本身类型决定(new后面的对象)
    Super           //static没有多态,由定义对象类型决定(new前面的类型)
    s2.v=0
    s2.getV=0
    Super
    s3.v=1
    s3.getV=1
    Sub
    1. 抽象类、接口
      http://www.cnblogs.com/felixzh/p/5938544.html
  • 相关阅读:
    Mysql 创建表
    oracle数据库 ORA-01017的解决办法
    用Html创建简历
    Mysql 基本的增删改查
    Linux 基本操作
    几乎百度
    测试第二天
    java map接口,可变参数,Collections集合工具类
    java set接口
    java List接口
  • 原文地址:https://www.cnblogs.com/season-peng/p/6713487.html
Copyright © 2011-2022 走看看