Java学习二(面向对象)day03

day03

1.引用类型数组
  1)先声明后赋值
    Student[] stus = new Studenr[3];
      stus[0] = new Student(“zhangsan”,25,”LF”);
      stus[1] = new Student(“lisi”,26,”JMS”);
      stus[2] = new Student(“wangwu”,27,”SD”);
      stus[1].age = 36; //给 stus中第2个元素的年龄赋值为36
  2)声明的同时赋值
    Student[] stus = new Studenr[]{
      new Student(“zhangsan”,25,”LF”),
      new Student(“lisi”,26,”JMS”),
      new Student(“wangwu”,27,”SD”)
    };
  3)int[]型的数组------------数组的数组
    int[][] arr = new int[3][];
    arr[0] = new int[2];
    arr[0] = new int[2];
    arr[0] = new int[2];
    a[1][0] = 100; // 给 arr中第2个元素的第1个元素赋值为100
  4)遍历数组的数组
    int[][] arr = new int[3][4];
    for(int i = 0;i<arr.length;i++){
      for(j = 0;j<arr[i].length;j++){
        a[i][j] = 100;
      }
    }

//引用类型数组测试类
public class StuTest {
    public static void main(String[] args) {
        Stu[] stus = new Stu[3]; //创建Stu数组对象
        stus[0] = new Stu("zhangsan",25,"LF"); //创建Stu对象
        stus[1] = new Stu("lisi",26,"JMS");
        stus[2] = new Stu("wangwu",28,"SD");
        System.out.println(stus[1].age); //26
        for(int i=0;i<stus.length;i++){
            System.out.println(stus[i].name);
            stus[i].sayHi();
        }

        Stu[] ss = new Stu[]{
            new Stu("zhangsan",25,"LF"),
            new Stu("lisi",26,"JMS"),
            new Stu("wangwu",28,"SD")
        };

        int[][] arr = new int[3][];
        arr[0] = new int[2];
        arr[1] = new int[3];
        arr[2] = new int[2];
        arr[1][0] = 100;

        int[][] as = new int[3][4];
        for(int i=0;i<as.length;i++){
            for(int j=0;j<as[i].length;j++){
                as[i][j] = 100;
            }
        }

    }
}

2.继承
  1)作用:代码复用
  2)通过extends来实现继承
  3)超类/父类:所有派生类所共有的属性和行为
    派生类/子类:派生类所特有的属性和行为
  4)派生类继承超类后,派生类具有:超类的+派生类的
  5)一个超类可以有多个派生类
    一个派生类只能有一个超类 -----------单一继承
  6)继承具备传递性
  7)java规定:构造派生类之前必须先构造超类
    在派生类的构造方法中若没有调用超类的构造方法
    -----则默认super()调用超类的无参构造方法
    在派生类的构造方法中若调用超类的构造方法
    -----则不再默认提供
    super()调用超类构造方法必须放在最上面

3.super:指代当前对象的超类对象
  super的用法:
  1)super.成员变量名 ------------------访问超类的成员变量
  2)super .方法名 ------------------------调用超类的方法
  3)super() --------------------------------调用超类的构造方法

//super的演示
public class SuperDemo {
    public static void main(String[] args) {
        Boo o = new Boo();
    }
}

class Coo{
    Coo(int a){
    }
}
class Doo extends Coo{
    Doo(){
        super(5);
    }
    /*
    //如下代码,写不写都有
    Doo(){
        super();
    }
    */
}

class Aoo{
    Aoo(){
        System.out.println("超类的构造方法");
    }
}
class Boo extends Aoo{
    Boo(){
        //super(); //默认的(调用超类的构造方法)
        System.out.println("派生类的构造方法");
    }
}

原文地址:https://www.cnblogs.com/lj-6112/p/8620260.html

时间: 2024-10-11 09:29:40

Java学习二(面向对象)day03的相关文章

Java学习二(面向对象)day010

day10 1.内存管理 1)堆: 1.1)存储new出来的对象 1.2)垃圾:没有任何引用所指向的对象 垃圾回收器(GC)不定时到内存中清扫垃圾 回收过程是透明的(看不到的),不一定一发现垃圾就立刻回收 调用System.gc()可以建议虚拟机尽快调度GC来回收垃圾 1.3)实例变量的生命周期 创建对象时存在堆中,对象被回收时一并被回收 1.4)内存泄露:不再使用的对象还没有被及时回收 建议:不再使用的对象及时将引用设置为null 2)栈: 2.1)正在调用的方法中的局部变量(包括方法的参数)

Java学习:二 基础

2014 - 5 - 22 上午 Java对大小写敏感. 点号(.)用于调用方法,Java的能用语法是: object.method(parameters); Java中的常量声明使用final关键字.且仅能赋值一次.习惯上,常量名大写. 可使用static final 定义一个类常量,以便在一个类中的多个方法中使用. 类常量定义在main方法外部,以便同一类其它方法可以使用.若使用public关键字,则其它类的方法也可以使用此常量. 字符串: Java中,允许使用+号拼接两个字符串. Java

Java学习(一)--面向对象(一)

面向对象的思想一直指导者我们软件的分析.设计与开发.java语言是一种面向对象的语言,在学习java之前,先回顾一下面向过程和面向对象. 一面向过程 面向过程主张按功能来划分系统需求,每个功能都负责对数据进行一次处理,每个功能都接受一些数据.它最小的单位是函数,每个函数负责完成一个功能,整个系统由一个个函数组成,其中有一个主函数,作为程序的入口,主函数依次调用其他普通函数,普通函数之间依次调用,从而完成整个软件系统的功能,其实就是主函数负责把系统中的所有函数"串起来". 从上面的图中我

Java学习之面向对象二

###01继承的概述 *A:继承的概念 *a:继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系 *b:在Java中,类的继承是指在一个现有类的基础上去构建一个新的类, 构建出来的新类被称作子类,现有类被称作父类 *B:继承关系的子类特点 *a:子类会自动拥有父类所有非private修饰的属性和方法 ###02继承的定义格式和使用 *A:继承的格式 class 子类 extends 父类 {} *B:雇员(Employee)与研发部员工(Developer)案例: *cn

Java学习 &#183; 初识 面向对象基础二

Package 为什么需要使用package a)   解决类重名的问题 b)   便于管理类 怎么使用package a)   类的第一句非注释性语句 b)   命名:域名倒着写,再加上模块名 注意事项 a)   不要使用默认包 JDK主要包 Import 1.为什么需要使用包 2.import怎么使用 3.注意事项 4.静态导入 原文地址:https://www.cnblogs.com/secoding/p/9495903.html

Java学习之面向对象一

1 面向对象 1.1     理解什么是面向过程.面向对象 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. l  面向过程的程序设计方式,是遇到一件事时,思考"我该怎么做",然后一步步实现的过程. 例如:公司打扫卫生(擦玻璃.扫地.拖地.倒垃圾等),按照面向过程的程序设计方式会思考"打扫卫生我该怎么做,然后一件件的完成",最后把公司卫生打扫干净了. l  面向对象的程序设计方式,是遇到一件事时,思考"我该让谁来做",然后那个"

Java学习之面向对象(概念性质) &lt;好程序员特训营&gt;

<A href="http://www.goodprogrammer.org/" target="blank">android培训</a>------我的java笔记,期待与您交流! 1.面向对象:三个特征:封装,继承,多态 2.开发过程:其实就是找对象使用.没有对象,就创建一个对象 3.类和对象的关系. 现实生活中的对象:张三 李四. 想要描述:提取对象中共性内容.对具体的抽象. 描述时:这些对象的共性有:姓名,年龄,性别,学习java功能

java学习之面向对象(4)

之前介绍了java面向对象三大特性之一封装,现在来说说三大特性之一继承和抽象类.这些只是我个人的认识,不足之处还请见谅. 1. 继承是面向对象的三大特征之一,那么何为继承呢? 继承是指一个对象直接使用另一个对象的属性与方法,是通过extends关键字让类与类之间产生继承关系.而被继承的类称为父类,继承父类的类称为子类(派生类). //父类 class Animal { //如果属性需要被子类继承,那么可以使用protected关键字,方法也一样 protected String name; pr

Java学习(二)--java概述

一 发展 看了java的发展史,发现他的发展充满了戏剧性.它没有经过精心的策划.制作,但是它的产生却具有了划时代的意义,一切的形成都好像顺利成章,又充满了传奇. 1990年,sun公司准备为下一代只能家电编写通用控制系统.因为C++的api存在的问题,创造了一种新的语言oak. 1992年,在其竞争机顶盒平台倡议中,因其过分给用户控制权而落选.否极泰来,在这里得到了最好的验证,再坚持一点点.下一个一点点就是转机. 1994年,互联网和浏览器的出现给oak带了希望.进过调整后,着眼于浏览器方法.更