1.面向过程和面向对象区别: 1)面向过程:开发一个应用程序.一个项目,必须先了解整个过程,了解各个步骤.模块间的因果关系,使的面向过程方式去开发程序时,代码和代码之间的关联程度是非常强.所以其中任何一个因果关系出现问题或者发生变动,都会影响到整个系统.缺点:扩展性差2)面向对象:先去了解整个业务,然后将现实的业务分割成不同的单元,再使用java程序对各个单元进行实现,实现之后我们只要给它一个环境,驱动一下,让各个单元和各个单元进行合作,形成一个系统.优点:扩展能力强 备注:因为现实世界太复杂多…
一:面向过程与面向对象的区别 举例:一个人开门的动作,可以分解为开门,人进去,关门. 面向过程:人作为执行者,1:开门  2:进入   3:关门 面向对象:人作为指挥者,将开门,关门的动作都封装到门上面.1:人调用门的打开方法 2:人进入  3:人调用门的关闭方法. 以开汽车为例: 以造汽车为例: 二:对象与类 1:类和对象的概念 2:类的属性和方法(成员变量和成员方法) a:属性(成员变量) b:方法(成员方法) 三:引用数据类型…
1.类的概念:类是构造对象的模板或蓝图.由类构造对象的过程称为创建类的实例. 2.封装的概念:封装(有时称为数据隐藏)是与对象有关的一个重要概念.对象中的数据称为实例域,操纵数据的过程称为方法.对于每个特定的类实例(对象)都有一组特定的实例域值.这些值的几个就是这个对象的当前状态.无论何时,只要向对象发送一个消息,它的状态就有可能发生改变.实现封装的关键在于绝对不能让类中的方法直接地访问其他类的实例域.程序仅通过对象的方法与对象数据进行交互.封装给对象赋予了“黑盒”特征,这是提高重用性和可靠性的…
Java基础-面向接口(interface)编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.接口的概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的“类”. 接口是抽象的一种机制,现实事物的共性抽取成类,将不同类中的同名方法抽象成抽象方法,形成抽象类,对类的成员变量和方法继续抽象的话,就形成接口,接口是类的最高级的抽象机制.接口中只有常量和抽象方法,接口是一种规范,实现一个接口,就需要实现其中的所有抽象方法. 接口只描述所应该具备的方法,并没有具体…
java基础面向对象之类与对象 2017-01-14 1.面向对象的基本概念 以一种组建化的形式进行代码设计 1)在面向对象程序设计中包含有如下几种特性 •封装性:保护内部结构的安全性 •继承性:在已有的程序结构上扩充新的功能 •多态性:在某一个该娘范围内满足 2)面向对象开发分为以下几个步骤: OOA(面向对象分析) OOD(面向对象设计) OOP(面向对象编程) 2.类与对象 1)了解类与对象的关系 ♦认识类与对象 类与对象是整个面向对象之中最基础的组成单元,类是共性的一个集合,而对象是某一…
4.JAVA基础语法:函数(方法).类和对象 函数 在java中函数也称为方法,是一段具备某种功能的可重用代码块. 一个函数包括这几部分: 函数头 函数头包括函数访问修饰符,函数返回值类型, 函数名,参数 代码块 返回值 具体看个实例: public class Main{ public static void main(String[] args){ int a = 1; int b = 2; int c = add(a, b); System.out.print(c); } public s…
Java基础-进程与线程之Thread类详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.进程与线程的区别 简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程.线程是程序执行任务的最小单位. 1>.进程的概念: 进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能. 2>.线程的概念: 线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程.一个进程中是可以有…
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String s2 = “hello”:结论:s1 == s2. 字符串常量放在data区. 3. String s3 = new String("hello"); String s4 = new String("hello");结论:s3 != s4.但s3.equals(s4).…
JAVA基础(二)-- 常用的类与方法 1 Math类 abs ceil floor 绝对值 大于等于该浮点数的最小整数 小于等于该浮点数的最大整数 max min round 两参数中较大的 两参数中较小的 四舍五入,算法为 Math.floor(x+0.5) pow sqrt random 指数 算术平方根 随机数,在[0,1)间,取整int()即可 exp log en In(n) 找数组中max/min: int a[] = {10,5,8}; int min = Arrays.stre…
一. 面向对象初识 我们在生活中做事都是面向过程的,前面实现一些基本逻辑功能代码也是用面向过程的语句实现的,后来学了函数,把这些功能又装到了函数里.但用面向过程的方法去写程序,只能实现一个功能,我们要实现很多功能时,需要写很多个代码块,每一个代码块的作用域都是全局的,要相对一个功能进行改动,还要考虑与其它代码块的联系,这样就造成了代码的可扩展性和维护性.那么装到函数里就好了吗?装到函数里变量只能作用于函数里,其他的函数无法使用变量.这时可以用面向对象的程序设计方法解决这些问题.面向对象的核心是对…
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第七十九章:类中可以嵌套接口吗? 下一章 "全栈2019"Java第八十章:外部类是否能实现本类中的接口? 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学…
面向对象 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计.开发计算机程序. 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为.面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征.行为特征抽象出来,描述成计算机事件的设计思想. 它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去操作实现. 面向对象的语言中,包含了三大基本特征,即封装.继承和多态. 举例:…
1.类加载器 ·简要介绍什么是类加载器,和类加载器的作用 ·Java虚拟机中可以安装多个类加载器,系统默认三个主要类加载器,每个类负责加载特定位置的类:BootStrap,ExtClassLoader,AppClassLoader ·类加载器也是Java类,因为其他是Java的类加载器本身也要被类加载器加载,显然必须有第一个加载器不是Java类,这正是BootStrap ·Java虚拟机中的所有类加载器采用具有树形结构进行组织,在实例化每个类装载器对象时,需要为其指定一个父类级的装载器对像或者采…
面向过程与面向对象: 1.面向过程思想的典型栗子是C语言,C语言实现一个程序的流程是:在主函数中一步一步地罗列代码(定义子函数来罗列也是一样的道理),以此来实现我们想要的效果: 2.面向对象思想的典型栗子是Java语言,Java是一种完全面向对象的语言,它实现一个程序的流程是:事先从我们创建的对象中挑选需要的对象,让他们做出各自的行为,以此来实现我们想要的效果: 3.两者的区别:面向过程思想的耦合性强,扩展性差,这样会导致用面向过程写出来的程序相对于面向对象写出来的程序适用范围小很多:但是对于小…
09.01_面向对象(多态的概述及其代码体现) A:多态(polymorphic)概述 事物存在的多种形态 B:多态前提 a:要有继承关系. b:要有方法重写. c:要有父类引用指向子类对象. C:案例演示 代码体现多态 09.02_面向对象(多态中的成员访问特点之成员变量) 成员变量 编译看左边(父类),运行看左边(父类). 09.03_面向对象(多态中的成员访问特点之成员方法) 成员方法 编译看左边(父类),运行看右边(子类). 09.04_面向对象(多态中的成员访问特点之静态成员方法) 静…
08.01_面向对象(代码块的概述和分类)(了解)(面试的时候会问,开发不用或者很少用) A:代码块概述 在Java中,使用{}括起来的代码被称为代码块. B:代码块分类 根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块(多线程讲解). C:常见代码块的应用 a:局部代码块 在方法中出现:限定变量生命周期,及早释放,提高内存利用率 b:构造代码块 (初始化块) 在类中方法外出现:多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行 c:静…
# 对象 = 属性 + 方法>>> # Python中的类名约定以大写字母开始>>> # tt = Turtle() 这就是创建类实例的方法,其它语言用new ,它是不需要的>>> >>> # Python中的self就相当于Java中的this >>> # self ,一般都放在方法的第一个参数中这是默认的要求 class Ball: def setName(self,name): self.name=name d…
数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻烦. 数组的概述 数组是指一组数据的集合,数组中的每个数据被称作元素.在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致. 数组的定义 格式: 数据类型[] 数组名 = new 数据类型[元素个数或数组长度]; 举例:int[] x = new int[100]; 要点说明 数据类…
类与对象 类.对象和引用的关系 类和对象的关系 类是对象的模版,对象是类的一个实例,一个类可以有很多对象 一个Java程序中类名相同的类只能有一个,也就是类型不会重名 一个对象只能根据一个类来创建 引用和类以及对象的关系 引用只能指向其所属的类型的类的对象 相同类型的引用之间可以赋值 只能通过指向一个对象的引用,来操作一个对象,比如访问某个成员变量 方法 参数传递方式 Java 总是采用按值调用. 基本类型的值传递 public class PrimitiveTransferTest { pub…
七.继承 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类中无需再定义这些属性和行为,只需要和抽取出来的类构成继承关系. 继承的好处 提高代码的复用性. 提高代码的扩展性. 类与类之间产生了关系,是学习多态的前提.例如:学生 is - a 人. 继承的格式(extends) [修饰符] class 父类 { ...} [修饰符] class 子类 extends 父类 { ...} 继承的特点 1.Java只支持单继承,每一个子类只有一个直接父类 2.Java支持多层继承,…
面向过程和面向对象的区别 面向过程(结构化程序设计) 实际上是一个面向操作过程,首先设计一系列过程(算法)来求解问题(操作数据),然后再考虑存储数据的方式(组织数据).即程序=算法\+数据结构.对应典型的计算机语言是c. 优点: 性能比面向对象高,调用速度快,比如单片机.嵌入式开发.Linux/Unix等一般采用面向过程开发 缺点: 没有面向对象易维护.易复用.易扩展 面向对象(面向对象程序设计) 和面向过程的次序相反,首先要确定如何组织数据,然后再考虑如何操作数据的算法.面向对象的程序是由对象…
---------- android培训.java培训.期待与您交流! ---------- 一.泛型 (一)泛型概述 1.泛型:JDK1.5版本以后出现的新特性,用于解决安全问题,是一个类型安全机制. 2.泛型技术是给编译器使用的技术,用于编译时期,确保类型的安全. 3.泛型的擦除:运行时,会将泛型去掉,生成class文件中的是不带泛型的,这个称为“泛型的擦除”.擦除泛型的原因是为了兼容运行时的类加载器. 4.泛型的好处:(1)将运行时期出现的问题ClassCastException,转移到了…
对象序列化 Java对象序列化(Serialize)是指将Java对象写入IO流,反序列化(Deserilize)则是从IO流中恢复该Java对象. 对象序列化将程序运行时内存中的对象以字节码的方式保存在磁盘中,或直接通过网络进行传输(例如web中的HttpSession,或者J2EE中的RMI参数及返回值),以便通过反序列化的方式将字节码恢复成对象来使用. 所有可能在网络上传输对象的类都应该可序列化,通常分布式应用需要跨平台,跨网络,所以要求所有传递的参数及返回值都可序列化. 通常让需要被序列…
#7.2.1_定义类 一个类的功能:数据域.定义方法.初始化程序 初始化程序总是被命名为:_ _init_ _ (两个连续的下划线) #7.2.4_self参数 #self参数是指向对象本身的参数,那么它的作用域就是整个类,self.x可以直接访问实例变量x,self.ml()表示调用类的对象self的示例方法ml. #7.2.5_举例:使用类 #7.4_不可变对象和可变对象 #7.5 #__radius是一个私有数据域,但是__radius__并不是私有数据域 #7.6…
1.什么是面向对象? 面向对象设计的实质 就是对现实世界的对象进行建模操作. 现实的生活中,随处可见的一种事物就是对象,对象是事物存在的实体,通常我们将会对对象划分为两个部分,静态部分和动态部分.比如人  静态的部分,就是不能动的部分,我们成为属性,例如;手,眼睛 动态部分 : 跑步,唱歌 在计算机的世界中,面向对象程序设计的思想要以对象来思考问题,首先要将现实世界的实体抽象为对象,然后思考这些对象具有哪些属性,行为. 还是比如人: 手,脚,眼睛  ,吃饭,喝水  我们可以把这些归为一类  封装…
九.内部类 将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类. (1)成员内部类:声明在外部类中方法外 静态成员内部类 非静态成员内部类 (2)局部内部类:声明在外部类的方法体中 有名字的局部内部类 匿名的内部类 静态内部类 1.语法格式: [修饰符] class 外部类 [extends 父类] [implements 接口们]{ [其他修饰符] static class 静态内部类 [extends 父类] [implements 接口们]{ }} 外部类的权限修饰…
封装 面向对象三大特性:封装.继承.多态 封装的好处 1.调用者:方便使用/简化使用 2.设计者:安全,可控 隐藏对象内部的复杂性,只对外公开简单的接口.便于外界调用,从而提高系统的可扩展性.可维护性. 如何实现封装 通过访问控制修饰符来控制相应的可见边界 (1)类 (2)包 (3)模块:Java9之后引入 (4)系统 对于类的成员:四种权限修饰符都可以使用 对于外部的类:只能使用public和缺省两种 属性封装的目的 隐藏类的实现细节 让使用者只能通过事先预定的方法来访问数据,从而可以在该方法…
面向过程 第一步做啥 第二部做啥 依此类推 层层递进 比如要弄一辆自行车 面向过程 搞车轮子 车链子 一步步来 如果有个地方坏了 说不定整个车都要拆了重新弄 扩展性很差 维护性也很差 速度比较快 面向对象 先整体设计一辆车 比如 车轮 链条 脚踏板啥的 然后分析每个部件的大小 是否跟其他部位零件适配 然后再去组装实现 维护性和扩展性比较强 前期投入时间长 或者说 这一类自行车都可以像这么设计 个人感觉 面向对象是 描述这一类事物的状态和行为 状态即属性 行为就是方法 每辆自行车都会有踏板 链条等…
初识面向对象 面向对象 & 面向过程 面向过程思想 步骤清晰简单,第一步做什么,第二步做什么..... 面向过程适合处理一些较为简单的问题 面向对象思想 ​ 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考.最后,才对某个分类下的细节进行面向过程的思索. 面向对象适合处理复杂的问题,适合处理需要多人协作的问题! 对于描述复杂的事物,为了从宏观上把握.从整体上合理分析,我们需要使用面向对象的思路来分析整个系统.但是,具体到微观操作,仍然需要面向过程的思路去处…
//面向过程计算器 //思路: 需要注意的是: 两个数相除 除数不能为0: //1.提示用户输入 //2.进行运算 //3.得到结果 Console.WriteLine("请输入第一个数字: "); double firstNumber = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("请输入第二个数字: "); double secondNumber = Convert.ToDouble(Cons…