OO:面向对象 OOP:面向对象编程 OOA:面向对象分析 OOD:面向对象设计 结构化编程:从顶向下,将一个大问题分解成更小的任务,然后为每一个更小的任务编写一个过程.最后程序员会编写一个主过程来启动程序流程,随后根据程序流程走向,调用想要的其它过程. 对象是存在的具体实体,具有明确定义的特征和行为. 万物皆为对象,对象因我关注而产生. 面向对象:一种认识事物的方式,注重对事物整体的认知,最符合人类自然的思维习惯. 对象是数据封装的结果. 类是具有相同属性和行为的一组对象的集合. 在软件系统中…
7.1继承的起源 继承(Inheritance),即在面向对象编程中,可以通过扩展(extends)一个已有的类,并继承该类的属性的行为,来创建一个新的类. 已有的类称为父类(也可以称为基类,超类),而新类称为子类(也可以称为派生类). 继承的优点:代码的可重用性:父类的属性和方法可用于子类:子类可以扩展父类的属性和方法:设计应用程序变得更加简单. 7.2 继承的使用原则 观察要使用的类,确定它们之间共同的和特有的属性和行为,将这些共性数据迁移到父类里,便于子类中进行方法和属性的重用. 对于不同…
面向对象编程 Object Oriented Programming OOP 第一.什么是类和对象 在具体说明类和对象之前,先说说别的. 眼睛在人类身体上最为有用的器官.如果一个没有了眼睛,这个人与世界的联系会大大减小.因为人脑主要是通过眼睛来获取数据的:当然也有其它器官获取的哦数据帮助我们更加准确的描述我们所看到的现象.眼睛通过光线作用,把客观物理世界投影到人脑.人脑是由亿万多脑细胞组成.脑细胞神经元有反馈机制,当级联的脑脑细胞神经元多起来后,通过反复的实验和检测,使得大脑得到对客观世界有更准…
编程语言的发展 机器语言 过程语言 面向对象编程--封装.继承.多态 关键字 extends implements override overload super this static abstract super package(声明当前类属于哪个包) import(引用某个包里的某个类) 类.对象相关概念 public class HelloWorld { // {}中的是类体 public static String ClassVar; // 类变量/静态变量 public String…
1.面向对象学习的三条主线: * 1.Java类及类的成员:属性.方法.构造器:代码块.内部类 * * 2.面向对象的大特征:封装性.继承性.多态性.(抽象性) * * 3.其它关键字:this.super.static.final.abstract.interface.package.import等 * * “大处着眼,小处着手” 2.面向对象与面向过程(理解)1.面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做.2.面向对象:强调具备了功能的对象,以类/对象为最小单位,考虑谁来做.…
Java 中的 static 使用之静态方法 1. 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员.如: 如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量.如: 2. 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量,如下所示: 3. 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法.如:   Java 中的 static 使用之静态初始化块 Java 中可以通过初始化块进行数据赋值.如: 在类的声明中,可以包含多个…
类与对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是不能代表某一个具体的事物 动物.植物.手机-- Person类.Pet类.Car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为 对象是抽象概念的具体实例 张三就是人的一个具体实例,张三家里的旺财就是狗的一个具体实例 能够体现出特点,展现出功能的是具体的实例,而不是一个抽象的概念 创建并初始化对象 使用new关键字创建对象 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初…
5.1 方法调用栈 当一个方法被调用时,将导致控制流程跳转到被调用的方法.然后,控制流程执行方法中的语句.当然,被执行的方法可能会调用其它方法,导致控制流程跳转到其它方法.所有的方法调用都维护在一个称为调用栈的结构中.当前正在执行的方法位于调用栈的顶部,当前方法执行完成后,就从调用栈的顶部移除,控制流程返回栈中的前一个方法.当一个新方法被调用后,这个新的方法就放在调用栈的顶部. 在java程序中,第一个被调用的方法就是main(),该方法是JVM调用的.因此main()方法总是在调用栈的底部.…
1.  集合特点:元素类型不同.集合长度可变.空间不固定 2.  java中对一些数据结构和算法进行了封装即集合.集合也是一种对象,用于存储.检索.操作和传输对象. 3.  JCF(Java Collections Framework)是JavaSE中包含的由一组类和接口组成的Java集合框架,其主要功能是用来将存储的数据以某种结构组织,并以特定的方式来访问这些数据,其目标是提供一个处理对象集合的通用框架,减少程序员处理不同对象集合时的编码量. 4.  集合框架包含三个内容:接口.实现类.算法.…
1.狭义JavaBean规范 Javabean必须包含一个无参数的public构造方法,方便通过反射的方式产生对象. 属性必须都是私有的. Javabean必须包含符合命名规范的get和set方法,以便访问Javabean的属性. Javabean应该是可序列化(serializable)的. 2.反射 在编译时,并不清楚应该加载哪个类.类的加载是在运行期间进行的.通过反射,可以对类进行加载.探知.自审. 可以通过对象.getClass()或者通过类名.class或者通过Class.forNam…
1.数组概述 数组是存储在一个连续的内存块中的元素集合.数组中的每个元素必须是相同的数据类型,并且通过索引进行区分.数组中的第一个元素的索引为0. 在java中,创建数组有两个步骤: 声明一个对数组的引用: 使用new关键字初始化数组,并指定数组的大小. 对数组的引用可以用中括号.如 int [ ] a=new int[5]; //声明一个长度为5名字为a的数组. 2.数组长度 java中每个数组都有一个length属性的代表数组的长度.如果一个数组a长度为5,则数组a的第一位所以为0,最后一位…
1.I/O操作指的是输入和输出流的操作.相对内存而言,当我们从数据源中将数据读取到内存中,就是输入流,也叫读取流.当我们将内存中处理好的数据写入数据源,就是输出流,也叫写入流. 2.流按照内容分类:字节流.字符流.对象流. 其实真正的流只有一种:字节流.数据的传输在底层都是以二进制方式传输,所以无论哪种流,都是字节流.字符流和对象流是在字节流基础上做了一层封装,以方便对字符数据和对象数据进行操作. 3.所有字节流的父类:InputStream和OutputStream. 所有字符流的父类:Rea…
1.异常:描述出错信息的对象. 字节码校验时,如发生错误,则会抛出异常. 2.所有异常的父类是Exception,异常可以捕获,可以处理. 所有错误的父类是Error,错误可以捕获,但不能处理. Throwable是Exception和Error的父类. 3.通过try{}catch(Exception e){e.printStackTrace();}可以捕获异常,其中try表示需要检测的代码块,catch表示捕获,Exception e表示创建变量e,如果try块中抛出了异常,虚拟机就用e变量…
3.1流程控制 三种基本技术可以改变程序的控制流程: ①   调用方法:调用方法将导致控制流程离开当前方法,转移到被调用的方法: ②   选择:java中有两种做出选择的机制:if/else语句和switch语句.三目运算符也可以用于选择,但它通常是if/else的一个简写版本: ③   循环:java中有三种循环语句:for循环.while循环.do/while循环. 3.2布尔逻辑运算 和:符号&,只有在组合表达式的每个部分都为真时,组合表达式才为真: 短路和:符号&&,即如果…
4.0 类常量和静态成员 通过上几篇博客我们了解到,类在实例化对象时,该对象中的成员只被当前对象所有.如果希望在类中定义的成员被所有实例共享. 此时可以使用类常量或静态成员来实现,接下来将针对类常量和静态成员的相关知识进行详给讲解. 4.1 类常量 在类中,有些属性的值不能改变,并且希望被所有对象所共享,例如圆周率,它是个数学常数,在数学物理计算中广泛使用,此时可以将表示圆周率的成员属性定义为常量.类常量在定义时需要使用const关键字来申明.示例代码如下: const PI=3.1415926…
1.        EXISTS和NOT EXISTS子查询:EXISTS关键字用来检测数数据库对象是否存在.                  ★EXISTS和NOT EXISTS的结果只取决于是否有返回记录,不取决于这些记录的内容,                      所以EXISTS或NOT EXISTS子查询后SELECT语句中的字段列表通常是无关紧要的.      ●EXISTS子查询: 在执行CREATE或DROP语句前,可以使用EXISTS语句判断该数据库对象是否存在,返回值…
1.  XML:extended Markup Language  可扩展标记语言,利用标签和子标签方式描述数据. 2.  声明<?xml version=”1.0”?>版本号 注释<!--    --> 空元素:<x/>标签之间没有内容 3.  每个XML文档必须有且只有一个根元素:根元素是一个完全包括文档中其它所有元素的元素:所有的元素都必须在根元素中定义. 4.  实体在XML中是存储单元,,一个实体可以包含字符串.文件.数据库记录,以及一些其它数据.预定义的符号…
1.  TCP/IP协议模型 应用层:应用程序: 传输层:将数据套接端口,提供端到端的通信服务: 网络互联层:负责数据包装.寻址和路由,同时还包含网间控制报文协议: 网络接口层:提供TCP/IP协议的数据结构和实际物理硬件之间的接口. 2.  端口: 端口,就是应用程序用于数据交互的通道,用于实现程序间的通信.每个应用程序都有固定的端口.Telnet--23   SMTP—25   FTP—21    HTTP—80 3.  TCP协议: 较可靠的双向流协议: 三次握手: 提供消息确认.错误检测…
 类,字段和方法 在scala里定义一个典型的类,代码如下: class ChecksumAccumulator { private var sum = 0 def add(b: Byte): Unit = { sum += b } def checksum(): Int = { return ~(sum & 0xFF) + 1 } } 1.在 Scala 里成员公开的方法是不显式地指定任何访问修饰符.换句话说,你在 Java 里要写上 “public”的地方,在 Scala 里只要什么都不要写…
问答题: 1.在声明类时,类名应该遵守哪些习惯? 1.与文件名相同2.首字母大写 2.类体内容中有那两类比较重要的成员? 1.成员变量2.方法 3.实例方法可以操作类变量吗?类方法可以操作实例变量吗? 类中的实例方法可以操作类变量 因为类总是先于实例存在的 实例只是类在特定状态下的一个特定对象 所以必须类存在 才能从类创建实例 所以实例方法可以操作类变量 因为类变量肯定存在 类方法不可以操作实例变量因为类方法的作用域在类上 类本身并不知道自己被创建了多少实例 这些实例哪些还存在 所以类方法没有办…
一.Java面向对象编程基础 1.什么是对象?Object 什么都是对象! 只要是客观存在的具体事物,都是对象(汽车.小强.事件.任务.按钮.字体) 2.为什么需要面向对象? 面向对象能够像分析现实生活问题的方式,来分析和实现计算机问题. 拉近了现实世界和计算机世界之间的距离. Scanner sc = new Scanner(System.in); sc.next(); sc.nextInt(); 对象有什么特点? 对象可以反复使用的:每个对象功能尽可能单一(各司其职.各尽所能),String…
面向对象编程 1.编程范式   我们写代码的目的是什么?就是为了能够让计算机识别我们所写的代码并完成我们的需求,规范点说,就是通过编程,用特定的语法+数据结构+特殊算法来让计算机执行特定的功能,实现一个功能的方式有很多种,对这些不同编程方式的特点进行归纳总结出来的编程方式类别,就叫做编程范式.最重要的两个编程范式就是面向过程编程和面向对象编程.发展到现在,编程已经从简单控制流中按步的指令集转变为依靠代码块完成既定的功能. 2.面向过程编程(Procedural Programming)   面向…
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4255624.html 第四章      类和接口 13.      使类和成员的可访问性最小化 要区别设计良好的模块与设计不好的模块,最后重要的因素在于,这个模块对于外部的其他模块而言,是否隐藏…
链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951895.html Java 网络编程(四) InetAddress类 InetAddress类 InetAddress类用来封装我们前面讨论的数字式的IP地址和该地址的域名. 你通过一个IP主机名与这个类发生作用,IP主机名比它的IP地址用起来更简便更容易理解. InetAddress类内部隐藏了地址数字. InetAddress类中的工厂方法 InetAddress类没有明显的构…
20145221<Java程序设计>第四章-认识对象 总结 教材学习内容总结 类与对象 定义:对象是Java语言中重要的组成部分,之前学过的C语言是面向过程的,而Java主要是面向对象的.Java中变量有2种类型,一个是基本类型,另一个则是类类型.使用Java撰写程序几乎都是在使用对象,要产生对象必须先定义类,类是对象的设计图,对象是类的实例. 特点: 有别于C语言的程序编写,在用Java编写中,如果需要什么功能,我们就可去找一个对象,而这个对象就包含这个功能,然后通过new建立对象,通过&q…
一:今天完成 上午详细了解了java面向对象编程的一些细节,记录如下. 1)类 是一种引用类型,包含一个签名和一个主体,主体是放在花括号里面的成员,成员包括字段和方法,还有构造方法.初始化程序和嵌套类型. 常用成员有四种:类字段.类方法.实例字段.实力方法. 其它引用类型还包括数组.接口.枚举和注解. 2)字段和方法 示例:一个简单的类和成员 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 public class Circle{…
<Java面向对象编程> 第11章 对象的生命周期 11.1  创建对象的方式 用new语句创建对象 运用反射手段,调用java.lang.Class 或者 java.lang.Constructor 类的newInstance()实例方法. 调用对象的clone()方法. 运用反序列化手段 11.2 构造方法 在多数情况下,初始化对象的最终步骤是去调用这个对象的构造方法.构造方法负责对象的初始化工作,为实例变量赋予合适的初始化值. 构造方法满足的语法规则: 方法名必须与类名相同 public…
一.团队介绍 成员姓名 任务分配 成员课程设计博客链接 兰泽祥(组长) 数据库,斗地主规则的实现,人机自动出牌的算法,实体类的设计 JAVA面向对象编程课程设计--web版斗地主 吴修恩 JSP界面的设计,前后端数据的交互,servlet设计,动态更新界面 Java课程设计---web版斗地主 二.项目GIT地址 fight_against_landlords 三.项目git提交记录截图 四.项目功能架构图.主要功能流程图 五.面向对象设计类图 1.CardGames类图:该类为牌局组类,与2的…
一.团队课程设计博客链接 JAVA面向对象编程课程设计--网络版单机斗地主 二.个人负责模块或任务说明 实体类的设计 斗地主规则的实现 人机自动出牌的算法 实现数据库的DAO模式 三.自己的代码提交记录 注:这里只有部分提交记录,详细的提交记录在团队课程设计博客里有 四.自己负责模块或任务详细说明 1.实体类的设计的代码分析 游戏设计需要用到卡片类(Card)正反面,还有牌型(CardType)的设计,以及各种牌的组合,还要设计在游戏中的抢地主.出牌倒计时.出牌和不出牌等等以及需要判断是否能够出…
面向对象(Object Oriented) 一.面向对象杂谈 面向对象(Object Oriented),我的翻译是以物体为目标的,就是说编程的时候是建立一个物体,然后对这个物体进行操作. Java语言是面向对象的(有95%都是面向对象的内容),C++是基于对象的 计算机语言的发展向接近人的思维方式演变 汇编语言        [面向机器] c语言           [面向过程] java语言        [面向对象] spring         [面向切面]———— 把类在进行切分 二.…