1 一只可爱的小狐狸

尚未进行身份认证

暂无相关简介

等级
TA的排名 20w+

就=与==的问题

一个=是用于赋值,表示将=右边的数据计算出来,并存放在左边的变量中。如果需要判断两个数据是否相等,应该使用==两个等号,不是一个

2020-05-12 09:02:53

浮点数无法准确存放,在进行等 值判断的时候如何解决?

举例说明:public class T1 {public static void main(String[] args) { double x1 = 0.1; x1=x1+x1+x1+x1+x1+x1+x1+x1+x1+x1; System.out.println(x1); }}在这里输出结果并不是1而是 0.99999999因为浮点数无法精确存放,所以会有一定的精度损...

2020-04-21 12:12:29

接口

什么是接口在Java中不直接支持多继承,因为会出现调用的不确定性,所以Java将多继承机制进行改良,在Java中变成了多实现。一个类可以实现多个接口报错原因:Java中不支持类的多重继承,一个类只能有一个双亲类接口允许多重继承一个类在继承另一个类的同时,还可以实现多个接口如何实现类和类之间1234接口的出现避免了单继承的局限性,这样定义C接口则拥有A+B的所有定义,可以使用A和B接口以及...

2020-04-10 17:54:38

抽象类

抽象类包含了抽象方法的类叫作“抽象类”,所谓的抽象方法是指没有函数体的方法,抽象方法必须在子类中给出具体实现,而抽象类本身不能创建对象。 public abstract class A{}因为抽象类的语义是不具体的类型,既然类型不具体则意味无法创建对应的对象,和类中是否有构造器和是否有抽象方法无关抽象类的特点1.方法只有声明没有实现时,该方法就是抽象方法,需要被abstract修饰,否则语法...

2020-04-08 17:37:45

多态性

多态性是一种允许使用一个界面来访问一类动作的特性,特定的动作可以由不同的具体情况而定(传入不同的参数)。多态性通过允许同一界面指定一类动作减少了程序的复杂度,编译器工作就是选择适用于各个情况的特定动作,而程序员则无须手动进行选择,使用者仅仅是记得以及利用这个统一的界面多态可以用三个定义和两个方法来总结。三个定义分别是父类定义子类构建、接口定义实现类构建和抽象类定义实体类构建,而两个方法分别是方...

2020-04-08 17:29:54

关键字static

特点用于修饰成员 随着类加载,随着类消失 优先于对象,用类名直接访问静态属性static属性是当前类的所有对象所共有的共同属性(只有一个,而普通属性各个对象都有自己的,相互隔离),任何一个当前类对象修改这个属性,所有其他类对象的这个属性都会受影响执行顺序: 静态属性—属性—构造器static执行时机:静态属性的处理在类加载之后自动执行,和是否需要构造对象无关,如果不new...

2020-03-26 11:34:22

关键字final

关键字final意思是最终的、不可变的1、 修饰变量【属性和临时变量】 定义final类型的变量要求进行初始化1、在声明的同时赋值2、也可以在构造器中进行第一次赋值3、final关键字还可以用于在临时变量上,其含义和属性上一致修饰变量时,变量被必须初始化,并且不能被修改。初始化可以定义final变量时直接初始化或者在构造函数中初始;final不但能修饰属性,还能修饰局部变量4、针对...

2020-03-26 11:31:00

this和super

this和super在setId方法中,出现了this,这里this用于表示当前对象。原因是参数名称id和属性名称id冲突。按照java中就近原则,在setId方法中使用的id是指参数,不是属性。如何引用属性,–this.id表示属性 this用于指代当前对象如果没有临时变量和属性名称冲突,在类中所写的都是属性,此时是否使用this.都可以。如果出现了在方法中临时变量名称和属性名称一致,则...

2020-03-26 11:26:19

2020-03-26

继承代码重用性低—重复部分----代码维护困难针对这些问题,java的解决方案就是继承extends----继承、扩展继承就是在已经存在的类的基础上,再进行功能扩展,从而产生新的类,支持了层次结构分类的概念。已经存在的类称为父类、超类或基类,而新产生的类称为子类或派生类public class Person{private String name;public void eat(){}}...

2020-03-26 11:18:23

UML和类图

UML统一建模语言是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML使用面向对象设计的的建模工具,但独立于任何具体程序设计语言。UML主要有以下作用:为软件系统建立可视化模型为软件系统建立构件为软件系统建立文档UML系统开发中有三个主要的模型:功能模型:从用户的角度展示系统的功能,包括用例图对象模型:采用对象,属性,操作,关联等...

2020-03-26 11:09:57

关于限定词

范围限定词: 不被外界干扰和滥用的程序设计机制,封装隐藏实现细节用于约束访问,主要用在方法和属性的定义上,用于限制针对方法和属性的访问。在Java中可以使用限制有4种:private 私有的、protected 受保护的、默认(就是没有限定词)、public 公共的class上的限定词定义类的方法实际上有2种,一种定义在另外一个类的内部(内部类),还有一种是外部类定义类时可以使用限定词,例如...

2020-03-26 10:54:02

什么是抽象?

抽象是人类解决问题的基本法宝。良好的抽象策略可以控制问题的复杂程度,增强系统的通用性和可扩展性 抽象主要包括过程抽象和数据抽象过程抽象是将问题域中具有明确功能定义的操作抽取出来,并将其作为一个实体看待 数据抽象是较过程抽象更高级别的抽象方式,将描述客体的属性和行为绑定在一起,实现统一的抽象,从而达到对现实世界客体的真正模拟...

2020-03-26 10:49:44

什么是封装?

封装是指将现实世界中存在的某个客体的属性与行为绑定在一起,并放置在一个逻辑单元内。 封装是一种将代码与其处理的数据结合起来,而不被外界干扰和滥用的程序设计机制。该逻辑单元负责将所描述的属性隐藏起来,外界对客体内部属性的所有访问只能通过提供的用户接口实现。public class Test1 {public static void main(String[] args) { St...

2020-03-26 10:38:46

什么是对象、类、消息和方法?

对象的状态和行为对象具有状态,一个对象用数据值来描述它的状态 对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为 对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中将大象装入冰箱 面向过程: 自上向下,逐步求精 3个步骤—定义每个步骤的具体步骤 面向对象: 自下向上,螺旋递增 首先定义大象和冰箱—每个类中应该提供的数据和方法—再调用类中的方法解决问题类 ...

2020-03-26 10:36:21

JavaSE面向对象基础概念问题

编程概述面向过程是一种自上而下的程序设计方法,主要思路专注于算法的实现自上而下的设计方法,设计者用一个main函数概括出整个应用需要做的事情,然后把main方法拆解成不同的步骤,对应不同的函数public class 装大象问题 { //首先考虑大的步骤,可以分为3步,定义3个函数的实现 public static void 打开冰箱门() { //然后细化这个步骤的具体实现,在考虑这个...

2020-03-26 10:28:14

字符类

字符属于简单类型 char c=’c’; 还可以使用\转义字符 字符是指用单引号括起来单个字符。这里的字符不是指占1个字节的ASCII字符,而是指占2个字节的Unicode字符 因为Unicode被设计用来处理现在世界上所有书面语言中的字符,所以一个汉字也是被当作一个字符来处理的。对于单个字符,除了有char这个原始类型以外,Java平台中的java.lang包还专门提供了一个Ch...

2020-03-12 15:01:41

Number类

数值类型的父类为Number所谓的数值类型是指存放具体数值数据的类型,例如int、double之类的数据。父类的含义是指数值型的包装类中含有Number类型定义的方法int intValue()可以将任何数值类型数据转换为int类型数据longValue() /floatValue() /doubleValue() / byteValue() / shortValue()两个特殊数值类型的类...

2020-03-12 14:56:33

包装类

包装类简单类型中不包含成员属性和成员方法,包装类就是简单类型的对象化封装,将简单类型可以转换为引用类型,从而具有对应的成员属性和成员方法。针对简单类型的存储是直接使用内存中的栈针对复杂类型的存储是使用栈存放对象的地址,具体的数据对象存放在堆中在java中有四型八种的基本数据类型,每种对应的数据类型还有对应的包类。基本数据类型 包装类byte By...

2020-03-12 14:53:30

java.Math类方法

java.lang.Math类方法1.Math.max 求两数中最大/Math.min 求两数中最小package Test0228;public class Test007 {public static void main(String[] args) { double x=12.45,y=52.4; System.out.println(Math.max(x, y)); System...

2020-03-10 15:21:15

Radom类随机生成

Random类Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机数计算时,随机算法的起源数字【参数】称为种子数seed,在种子数的基础上进行一定的变换,从而产生需要的随机数字创建随机对象new Random()构造方法使用一个和当前系统时间对应的相对时间有关的数字作为种子数,然后使用这个种子数构造Random对象new Random(long seed)构造方法可以通过制定...

2020-03-10 15:07:05

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。