【名师课堂】Java面向对象开发

【名师课堂】Java面向对象开发

Java核心第二部
106课时 |
23947人已学 |
(24 评论)

加入学习
加入学习

链表 二叉树--数据结构的基本功

 

数据结构就是引用传递和递归

数组定长的线性结构的特点,使得如果内容过多或过少都会产生内存的浪费。

采用火车的车厢的问题,最好的做法就是使用一个不固定长度的数组,有多少数据就保存多少数据。类似于火车车厢。

如果想去定义火车车厢,不能只保留数据,还需要一个位置指向下一个节点。 

取出的方式利用递归的方式取出。递归的要有一个结束条件

 

[展开全文]
沸腾的硫酸 · 2019-01-06 · 链表(链表基本概念) 0

多例设计,要求描述一周时间数的类,有七个

这些都属于多例设计模式

  更多个内部实例化对象产生而已

发生

构造方法必须 私有化

不管

构造方法私有化

类内部一定提供一个static 

编写几率不是很高

多例模式已经被枚举取代

[展开全文]
不忘实心 · 2018-11-07 · 单例设计模式(多例设计模式) 0

 JAVA 多态性的体现

方法的多态性

-Overload

同一个类中可以有多个相同方法名的方法,它们的参数列表各不相同(参数类型 参数个数 参数顺序)与返回值无关、修饰符无关。

-Override

在子类中可以存在与父类的某个方法名一致的方法,它们的参数列表相同 参数类型兼容 方法修饰符范围必须大于父类的,不可以抛出比父类更多的异常,可以抛出运行时异常。返回值可以是父类返回值的子类。

对象的多态性(前提:方法覆写)

【自动】对象向上转型

父类 父类对象 = 子类实列

【强制】对象的向下转型

子类 子类对象 = (子类)父类实列

 

[展开全文]
diggg · 2018-07-15 · 多态性 0

1.用static修饰的内部类等同与外部类,其实例化的语法为:

  外部类.内部类 内部类对象 = new 外部类.内部类().

[展开全文]

public String(char[] value)字符串就是字符数组。

public String (char[] value,int offset,int count)将字符数组中的所有内容变成字符串。

public char charAt(int index),取得索引位置的字符。0为起始位置。 

toChararray 将字符串变为字符数组

字符串和字符数组的互相转换是重点内容

System.out.promtln(new String(data,5,5))//部分转换

System.out.println(new String(data))实现字符数组转换成字符串。

调用String类,返回结果就一定是字符串

 

[展开全文]

数组只要一个索引就可以使用 

【行索引】【列索引】

动态初始化

数据类型  对象数组 [] []=new 数据类型 [行个数][列个数];

静态初始化 在动态数组的基础上加上数组内部的具体数值

int data[] []= new int[] []{

{1,2,3},{4,4,5},{5,6,8}}

[展开全文]
沸腾的硫酸 · 2018-06-18 · 数组的定义与使用(二维数组) 0

private 必须要有setter getter

但是必须要包括一个无参构造方法

类中所有的方法都不允许有system.out.println语句

类中有返回完整信息的方法 ,即getinfo()

[展开全文]

构造方法与类的名称一样

public Person(){

System。}

出现new语句的时候才出现构造方法

属性是在开辟堆内存的时候形成的

public void Person()命名不标准 就是普通方法

与public Person() 构造方法

不能用void 来定义构造方法

 

有参构造在无参执行的时候会报错 

构造方法的调用可以一次性传递所有参数,为数据进行初始化。

setter 不仅可以用于设置数据,可以用于修改数据。  

1、类定义

2、属性

3、构造方法

4、普通方法

匿名对象 

[展开全文]
沸腾的硫酸 · 2018-06-13 · 构造方法与匿名对象 0

堆内存可以被多个栈内存调用

栈内存存放内存地址。

堆内存是内容   

 

per1 per2都有各自的指向,如果把per1的地址内容给了per2,则需要先把per2原先的与内容的连接断开。 原先per2所指向的堆内存是为垃圾内存。

再重新操作per2,则输出的是更改过的per2的内容。

垃圾空间是指没有栈内存指向的堆内存。会被GC garbage collecter收集。gc影响性能,故而要控制对象的产生数量,也即少产生无用的对象。

[展开全文]
沸腾的硫酸 · 2018-06-13 · 类与对象(引用传递初次分析) 0

面向生活抽象,生活中可行就可以以程序进行实现。

[展开全文]
沸腾的硫酸 · 2018-06-12 · 面向对象简介 0

1.public String substring(int beginIndex)由指定索引处截取到末尾。

 public String substring(int beginIndex,int endIndex)截取部分字符串。

[展开全文]

1.public String[] split(String regex,int limit)将字符串部分拆分,返回的是一个字符串数组。

 public String[] split(String regex)将字符串部分拆分。若发现有些n

[展开全文]

1.public boolean contains(String s) 判断一个子字符串是否存在。

 public int indexOf(String str)从头开始查找字符串的位置,若存在则返回索引处,否则返回-1.

 public int indexOf(String str,
      int fromIndex)从指定位置查找子字符串的位置。 

 public int lastIndexOf(String str)从字符串的末尾向前查找指定字符串的位置。

 public boolean startsWith(String prefix)判断是否以指定的字符串开头。

 public boolean startsWith(String prefix,int toffset)判断指定位置是否以指定字符串开头。

 public boolean endsWith(String suffix)判断是否以指定字符串结尾.  

2.一般查找字符串都建议使用contains()方法完成。

3.indexOf只能查找指定字符串第一次出现的位置。

[展开全文]

1.在String类中compareTo()方法是一个最为重要的操作方法,其返回值为Int类型。  

    (1)相等,返回0;

    (2)小于:返回的内容小于0;

    (3)大于:返回的内容大于0

[展开全文]

程序是按照结构的偏差归类,而不是根据方法名来定义 

 

[展开全文]
攀登小虾米 · 2018-05-22 · 构造方法与匿名对象 0

课时2 类与对象(类与对象基本定义)

类是引用数据类型

类是引用数据类型 什么原因?

  假设类是引用数据类型,那么类就是模型.类是引用,也可以理解,毕竟是调用关系.也就是调用类的方法,那么数类型 就是指其中的方法定义中的数据吗?

 

[展开全文]
攀登小虾米 · 2018-05-17 · 类与对象(类与对象基本定义) 0

面向对象

有认为人面向对象更加复杂,更多人愿意用函数式编程.

面向对象具备: 

封装性: 内部的操作对外部而言不可见;

继承性: 在上一辈基础上继续发展

多态性: 在一个可控的范围的改变

[展开全文]
攀登小虾米 · 2018-05-17 · 面向对象简介 0

1.字符串常量是不可更改的,可以更改的是对象对象对字符串的引用,但是这样会产生很多垃圾,造成内存浪费。

[展开全文]

  1.采用直接赋值的模式进行String类对象的实例化操作,则该实例化对象(字符串内容)将自动保存在Java中的对象池中。下次创建对象是采用直接赋值的方式创建相同的字符串,则不会new新的东西,直接调用对象池中的对象。

  2.使用构造方法创建字符串,则会产生垃圾空间,实际上也会对字符串共享产生一定的问题。

  3.public String intern()方法可以实现将new出来的字符串常量放入共享池中。

[展开全文]

  1.在开发过程中,如果要判断用户输入的字符串是否等同与指定的字符串,那么一定要将字符串写在前面。

[展开全文]

授课教师

讲师
阿里云开发者社区全面升级
一站式体验,助力云上开发!
进入新社区

相关课程

查看更多 >