为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第二季

小慕 JAVA开发工程师
难度入门
时长 4小时 0分
学习人数
综合评分95.7
2050人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.4 逻辑清晰
  • super关键字指的是父类 子类的构造的过程当中必须调用其父类的构造方法 相当于super();默认是调用无参的 如果子类的构造方法中没有显示调用父类的构造方法,系统会默认调用父类无参的构造方法. 如果要显示的调用父类的构造方法,必须在子类的构造方法第一行中添加super(); 如果子类构造方法中既没有显示调用父类的构造方法,而父类又没有无参的构造方法,则编译出错,如果父类是定义了有参的构造方法,那么子类必须super.(父类的参数),或者父类中添加一个无参的构造方法,否则出错 因为默认调用的是super();是无参的。 一个类中没有定义构造方法,则系统会默认为此类定义一个无参的构造方法.如果自定义了一个带参的构造方法,则系统不会为其添加无参的构造方法.
  • 封装的信息的类的名字是冲突的 java中包的作用: 1.管理java文件 2.管理同名文件冲突 加上不同的包来区分相同文件名的类 包的定义:packege,包名间可以用点来区别文件夹 且要放在java程序的第一行 类名相同的可以用包名来区分 java.lang.(类) 放置java语言基础类 java.util.(类)放置java语言工具类 java.io.(类)包含输入输出相关功能的类 用import来显示在某个文件中的其他文件中的类 在包中不能存放相同名字的类 默认情况下会把同一个包名导入进来 包 名全部是小写
  • 继承的初始化顺序: 1.初始化父类再初始化子类。 2.先执行初始化对象中的属性,再执行构造方法中的初始化。 父类对象-->属性初始化--->构造方法 子类对象-->属性初始化--->构造方法
    04:42
    看视频
  • 多态就是老爸可以打自己,老爸可以打儿子,但是儿子不能打老爸,并且老爸不能打儿媳。
  • http://www.imooc.com/article/17384,这个是我写的代码,里边用注释标注了大致的思路,另外还有改进版的程序,有什么问题可以留言一起讨论下。有初学java的加关注一起学习啊
  • 如何定义一个类: 1.类的重要性:所有java程序都是以类class为组织单元的,是基本元素。 2类是模子,确定对象将会拥有什么样的特征(属性)和行为(方法)。先有类才能够描述具体对象。 3类的组成:属性和方法 4定义一个类的顺序: a.定义类名:publi class 类名{内容},class是定义类的关键字。 b.编写类的属性:在{}内定义不同的属性类型,可以是一种可以是N种。 c.编写类的方法:可以多种行为,可以一种。
  • equals()----返回值是布尔类型 比较的是对象的引用是否指向同一块内存地址-------对象实例化时,即给对象分配内存空间 使用方法如:dog.equals(dog2); 如果是两个对象,但想判断两个对象的属性是否相同,则重写equals()方法 1.地址是否相同----if (this == obj) 2.对象是否为空----if (obj == null) 3.getClass()可以得到类对象,判断类型是否一样-----if (getClass() != obj.getClass()) new出来的是类的对象,关注的是类的属性的具体的数据; 类对象是类的代码信息,关注的是类有什么属性和方法 4.属性值是否一样----if (age != other.age)
  • Dog dog = new Dog() //等号左边代表:子类 的 引用,即子类Dog的引用dog //等号右边代表:创建一个子类Dog的对象 //综合表示:用一个子类(Dog)的引用(dog)来指向所创建的子类对象,可以把dog看成对象 Animal animal = dog;//用父类的引用animal来指向对象dog,相当于自动类型提升or向上类型转换 Dog dog2 =(Dog)animal;//将父类引用animal转换成子类引用dog2,加(Dog)强制转换、也叫向下类型转换 Cat cat =(Cat)animal;//虽然编译用Cat类型不会出错,但是运行的是Dog类型会出错.因为我们真正开辟的Dog类型,而运行时程序发现2个类型不匹配,因此会报错
    05:57
    看视频
  • 为什么要使用内部类?在《Think in java》中有这样一句话:使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。 在我们程序设计中有时候会存在一些使用接口很难解决的问题,这个时候我们可以利用内部类提供的、可以继承多个具体的或者抽象的类的能力来解决这些程序设计问题。可以这样说,接口只是解决了部分问题,而内部类使得多重继承的解决方案变得更加完整。 其实使用内部类最大的优点就在于它能够非常好的解决多重继承的问题,但是如果我们不需要解决多重继承问题,那么我们自然可以使用其他的编码方式,但是使用内部类还能够为我们带来如下特性(摘自《Think in java》): 1、内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互独立。 2、在单个外围类中,可以让多个内部类以不同的方式实现同一个接口,或者继承同一个类。 3、创建内部类对象的时刻并不依赖于外围类对象的创建。 4、内部类并没有令人迷惑的“is-a”关系,他就是一个独立的实体。 5、内部类提供了更好的封装,除了该外围类,其他类都不能访问。
  • 1.包的作用: 管理java文件 解决同名文件冲突 2.定义包:package包名 注:必须放在java源程序的第一行 包名间可以使用"."号隔开 eg:com.imooc.MyClass 3.系统中的包 java.(功能).(类) java.lang.(类)包含java语言基础的类 java.util.(类)包含java语言中各类工具类 java.io.(类)包含输入、输出相关功能的类 4.包的使用 1)可以使用import关键字,在某个文件使用其他文件中的类。 import com.imooc.music.MyClass 2)java中,包的命名规范是全小写字母拼写 3)使用的时候不但可以加载某个包下的所有文件 eg:com.imooc.* 也可以加载某个具体子包下的所有文件 eg:com.imooc.music.*
  • 成员内部类用法注意: 1. 内部类访问外部类的属性、方法: 内部类可以直接访问外部类属性、方法,如重名,必须通过 外部类名.this.数据 来访问。 2. 外部类访问内部类的属性、方法: 外部类不能直接访问内部类属性、方法,必须先创建内部类对象,然后通过对象来访问。 3. 创建内部类对象: 外部类或其余内部类创建内部类对象:直接new 其余类创建内部类对象:必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( )。
  • 睿智狂人 1、创建两个接口(载客接口A-载客量)、(载货接口B-载货量),载客和货接口C extend 载客接口A,载货接口B(载客量、载货量),一个抽象父类Car(车型、单价-->元/天); 2、实现-卡车类 extend 父类Car implement 载货接口B; 实现-客车类 extend 父类Car implement 载客接口A; 实现-皮卡类 extend 父类Car implement 载客和货接口C; 3、租车系统类:一维数组 实例化 卡车对象、客车对象 和 皮卡对象; 4、客户选车、分类汇总车辆后,输出租车明细与总价。
  • private 同类 默认 同类 同包 protecte 同类 同包 子类 public 同类 同包 子类 其他
    00:43
    看视频
  • 1. 若在Eclipse中,类里创建了private属性,这里可以利用Eclipse快捷键自动创建get set方法. (点击Eclipse , sources(源码) ,下面有一个setter...代表自动创建入口方法) 2.自动创建后,属性名往往与参数名相同,为了区分,就用到this关键字. this.screen代表当前对象的属性. this.方法名()则代表调用当前对象的方法.
    02:48
    看视频
  • 练习笔记:package exercise; public abstract class Shape{ public abstract double perimeter(); public abstract double area(); } public class Rectangle extends Shape{ private double length; private double width; public Rectangle(double length, double width){ this.length = length; this.width = width; } public double perimeter(){ return (length + width) * 2; } public double area(){ return length * width; } } public class Circle extends Shape{ private final double PI = 3.1415926; private double radius; public Circle(double radius){ this.radius = radius; } public double perimeter(){ return 2 * PI * radius; } public double area(){ return PI * radius * radius; } } public class Test { public static void main(String[] args) { Shape rec = new Rectangle(2, 3); Shape cir = new Circle(4); System.out.println(rec.perimeter() + " " + rec.area()); System.out.println(cir.perimeter() + " " + cir.area()); } }

举报

0/150
提交
取消
课程须知
本课程是Java开发的基础,需要大家:掌握 Java 基本语法的使用。如果您是新手,建议先移步 《Java入门第一季》
老师告诉你能学到什么?
• 掌握 Java 基本语法和编程思路 • 熟练运用面向对象程序设计思想
意见反馈 邀请有奖 帮助中心 APP下载
官方微信