Java笔记(九)……面向对象I】的更多相关文章

面向对象概念 理解面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将功能封装进对象,强调具备了功能的对象. 面向对象是基于面向过程的. 面向对象特点 是一种符合人们思考习惯的思想 可以将复杂的事情简单化 将程序员从执行者转换成了指挥者 完成需求时: 先要去找具有所需的功能的对象来用. 如果该对象不存在,那么创建一个具有所需功能的对象. 这样简化开发并提高复用. 开发的过程:其实就是不断的创建对象,使用对象,指挥对象做事情. 设计的过程:…
理解 在定义功能时功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分,那么就将不确定的部分暴露出去,由该类的子类完成. 举例 需求 获取一段程序的运行时间 代码 abstract class GetTimeTemplate { public final void getTime() { //使用final修饰,防止被复写 long start = System.currentTimeMillis(); runCode(); //将代码以函数的形式封装 long end…
一.面向过程与面向对象的区别 1 面向过程:主要关注点是:实现的具体过程,因果关系[集成显卡的开发思路] * 优点:对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低. * 缺点:采用面向过程的方式开发很难解决非常复杂的业务逻辑,另外面向过程的 方式导致软件元素之间的“耦合度”非常高,只要其中一环出问题,整个系统受到影响, 导致最终的软件“扩展力”差.另外,由于没有独立体的概念,所以无法达到组件复用. 2 面向对象:主要关注点是:主要关注对象[独立体]能完成哪些功能.[独立显卡的开发…
继承概述 继承概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可. 多个类可以称为子类,单独这个类称为父类或者超类. 子类可以直接访问父类中的非私有的属性和行为. 通过 extends 关键字让类与类之间产生继承关系. class SubDemo extends Demo{} 继承好处 提高了代码的复用性. 让类与类之间产生了关系,有了这个关系,才有了多态的特性. 继承特点 Java只支持单继承,不支持多继承. 一个类只能有一个…
封装概念 封装: 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式. 好处: 将变化隔离. 便于使用. 提高重用性. 提高安全性. 封装原则: 将不需要对外提供的内容都隐藏起来. 把属性都隐藏,提供公共方法对其访问. private(私有)关键字 private关键字: 是一个权限修饰符. 用于修饰成员(成员变量和成员函数) 被私有化的成员只在本类中有效 常用之一: 将成员变量私有化,对外提供对应的set ,get方法对其进行访问.提高对数据访问的安全性. 构造函数 特点: 函数名与类名相同…
一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理:         代表的是当前对象.         this就是所在函数的所属对象的引用.         简单说,哪个对象调用了this关键字所在的函数,this就代表哪个对象. 1.区别局部变量和成员变量 内存图解: 说明: 程序执行到main函数时,main函数进入栈内存中的方法区,执行到Person p = new Person("旺财");时,在ma…
Java学习笔记之---面向对象 (一)封装 (1)封装的优点 良好的封装能够减少耦合. 类内部的结构可以自由修改. 可以对成员变量进行更精确的控制. 隐藏信息,实现细节. (2)实现封装的步骤 1.  修改属性的可见性来限制对属性的访问(一般限制为private) private String sex; 2. 对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问 public void setSex(String s){ this.sex=s; } public…
title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自11期罗天帅学长) 一.面向对象技术简介 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 类变量:类变量在整个实例化的对象中是公用的.类变量定义在类中且在函数体之外.类变量通常不作为实例变量使用. 数据成员:类变量或者实例变量…
1.java中5个存放数据的地方: (1).寄存器(Registers):位于CPU内部,是速度最快的存储区,但是数量和容量有限.在java中不能直接操作寄存器. (2).栈(Stack):栈位于通用随机访问存储器 (General random-access memory,RAM,内存) 中,通过处理器的栈指针访问,栈指针从栈顶向栈底分配内存,从栈底向栈顶释放内存.栈是仅次于寄存器的速度第二快的存储器,在java程序中,一般的8种基本类型数据和对象的引用通常存放在栈内存中,不通过new关键字的…
Elasticsearch笔记九之优化 ).get(); } curl命令可以在linux中建立一个定时任务每天执行一次,同样java代码也可以建立一个定时器来执行. 2:内存设置之前介绍过es集群有两种启动方式第一种是bin目录下bin/ elasticsearch打开/usr/local/elasticsearch-1.4.4/bin/elasticsearch.in.sh文件修改文件中的两个参数,将ES_MIN_MEM=256m和ES_MAX_MEM=1g的值改成一样一般设置为可用内存的6…
目录 多线程学习笔记九之ThreadLocal 简介 类结构 源码分析 ThreadLocalMap set(T value) get() remove() 为什么ThreadLocalMap的键是WeakReferrence? 总结 多线程学习笔记九之ThreadLocal 简介   ThreadLocal顾名思义理解为线程本地变量,这个变量只在这个线程内,对于其他的线程是隔离的,JDK中对ThreadLocal的介绍: This class provides thread-local var…
Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, Ejb, java和模式 Linux/Unix笔记 inode :存储编号(地址) ls -k:查看磁盘分区 ls -li:显示当前文件的inode号. 目录的大小跟文件的大小有关,跟目录里的文件(目录)数量无关. 一行多个命令的话,中间用分号分开.如:pwd;cal;date last | grep…
Python:笔记(3)——面向对象编程 类和面向对象编程 1.类的创建 说明:和Java不同的是,我们不需要显示的说明类的字段属性,并且可以在后面动态的添加. 2.构造函数 构造函数的功能毋庸置疑,可以让我们在定义对象的时候执行一些必要的初始化,在Python中我们通过__init__方法来实现 说明:这里有一些需要注意的地方 首先,关于self参数 其次,实现访问控制 如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线_,在Python中,实例的变量名如果以 _ 开头,就变成了一…
Java笔记--基础语法       一.字符串的拼接: 例如: System.out.println(""+"");     二.换行语句: 例如: System.out.println("Hello World!");     三.输入语句: 例如: import java.util.Scanner; public class 输入语句 { public static void main(String[] args) { Scanner s=…
Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 通过私有构造器强化不可实例化的能力 第5条 避免创建不必要的对象 第6条 消除过期的对象引用 第7条 避免使用终结方法 第1条 考虑用静态工厂方法代替构造器 对于类而言, 最常用的获取实例的方法就是提供一个公有的构造器, 还有一种方法, 就是提供一个公有的静态工厂方法(static factory…
一.Java基础以及面向对象编程1.float类型的数自动转换成double类型时,可能会出现前后不相等的情况,因为有些数不能够用有限的二进制位精确表示.2.右移>>右移,左边空出位以符号位填充>>>右移,左边空出位以0填充3.计算阶乘 public class Factorial { public Factorial(){ } public long getFactorial(int n){ if((n<0)||(n>17)){ return -1; }else…
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的不正常情况,将情况用java的类的形式进行描述.并封装成对象. (二)异常分类 对异常问题的分类:“严重的的Error”和“不严重的Exception” (1)一种是严重的问题:对于严重的问题,java通过Error类进行描述. (2)一种是不严重的问题:对于非严重的,java通过Exception…
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9374935 作者:七十一雾央 新浪微博:http://weibo.com/1689160943/profile?rightmod=1&wvr=5&mod=personinfo 在上一节笔记中,雾央预告说打算这一节讲流畅动画的改进以及重新封装代码的,但是看起来似乎没有多少同学感兴趣,所以雾央决定把他们往后挪一挪,先来讲解点有意思的东西. 在游戏之中…
--2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:…
Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释,什么是对象?万物皆对象!够霸气吧,当时的面向对象思想对我来说还是挺崩溃的,什么继承多态啊!经过了无数的联系项目的书写,终于对面向对象有了一定的理解,现在刚好在java的学习中再度重温面向对象,那么就将我眼中的面向对象写出来分享给大家. 说到面向对象,我们就不得不提一下他的三大特性,继承封装和多态.…
一.Java是什么 Java是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言. 二.Java的发展简史 在20世纪90年代初,Sun公司的工程师James Gosling等人想开发一种基于智能家用电器上运行的语言,用来解决电视机.微波炉.电话等家电之间的通信控制等问题,并将这种语言命名为Oak,但由于有线电视业界认为Oak给予用户太多的控制权,Oak几乎没有任何市场,面临夭折的危险. 然而,塞翁失马,焉知非福!随着互联网和浏览…
思考的两种方式: 举例: 把大象放到冰箱里 一.面向过程 :[打开冰箱->把大象放里面->关上冰箱门]面向过程注重的是过程,也就是(动作[函数]),然后按照动作依次去执行就好了. 代表语言是C语言 二.面向对象:找到冰箱,做了封装[冰箱打开,冰箱存储,冰箱关闭]面向对象强调的是对象,面向对象强调的是对象(实体).冰箱就是一个对象,本身具有的功能有:打开.关闭.  存储. 代表语言:C++,java,C# 面向对象的特点: 1.面向对象是常见的一种思想,符合人们的思考习惯. 2.面向对象的出现,…
UML和模式应用学习笔记-1(面向对象分析和设计) 而只是对情节的记录:此处的用例场景为:游戏者请求掷骰子.系统展示结果:如果骰子的总点数是7,则游戏者赢得游戏,否则为输 (2)定义领域模型:在领域模型中展示重要的领域概念和对象,领域模型并不是对软件对象的描述,它使真实世界领域中的概念和想象可视化:因此它也被称为概念对象模型: (3)定义交互图:面向对象设计关注软件对象的定义--它们的职责和协作:顺序图是描述协作的常见表示法,它展示出软件对象之间的消息流,和由消息引起的方法调用. (4)定义设计…
一. 什么是面向对象 都说Java是一门面向对象的语言,但什么对象?什么又是面向对象?以下都是我学到的知识和一点自己的理解. 对象是指包含属性和行为的主体. 比如,人有性别.血型.单眼皮或双眼皮等的特点,也有跑.跳.进食.呼喊.笑.怒等行为.这样,人就可以说是对象. 同时,对象也可以是不具有生命的事物,比如,伞有尺寸,颜色,用途(遮阳伞.雨伞)等属性,也包含撑开方式和收起方式的行为.这样,伞也可以是对象. ...... 像这样的例子数不胜数,只要愿意,什么都可以是对象--这一点和java声称的一…
20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步骤 (一)单元测试 在IDEA中建一个项目MyUtil 对于MyUtil类,建立一个MyUtilTest1.java的测试类: 新建一个test文件夹在根目录中->右键选择Mark Directory as->Test Sources Root 之后在test文件夹中建立一个MyUt…
面向对象 面向过程的代表主要是C语言,面向对象是相对面向过程而言,Java是面向对象的编程语言,面向过程是通过函数体现,面向过程主要是功能行为. 而对于面向对象而言,将功能封装到对象,所以面向对象是基于面向过程的.以前是主要以面向过程为思想,现在是将功能装进对象中,如果要用到功能时,就调用该对象即可. 面向对象是入门思想的进步,适用于人类的思考,将复杂的东西进行了简单化,将我们程序员从执行者变化成指挥者.由以前面向功能(面向过程)转变为面向对象(封装的功能). **** 面向对象设计思想 设计思…
Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记.以下内容摘自 <深入理解Java内存模型>读书总结 并发 定义:即,并发(同时)发生.在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行. 并发需要处理两个关键问题:线程之间如何通信及线程之间如…
Java是一门面向对象编程语言. 不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征. Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 . Java具有:简单性面向对象分布式健壮性安全性平台独立可移植性多线程动态性 Java可以编写:桌面应用程序Web应用程序分布式系统嵌入式系统应用程序 package com.HelloWorld; public class…
<Microsoft SQL Server 2008 MDX Step by Step>学习笔记九:导航结构层次   SQL Server 2008中SQL应用系列及BI笔记系列--目录索引 导读:本文介绍MDX中的导航结构层次(Hierarchies).成员(Member)之间的关系可以用家族来描述.本文以此为基础,介绍了: ■1.访问直系亲属关系(Immediate Relatives) ■2.访问延伸亲属关系(Extended Relatives) ■3.在一个级别(Level)内导航…
python3.4学习笔记(九) Python GUI桌面应用开发工具选择 Python GUI开发工具选择 - WEB开发者http://www.admin10000.com/document/96.html 为什么用Python开发桌面应用程序_yu000hong_新浪博客http://blog.sina.com.cn/s/blog_48a45b950100zhwx.html 鱼C工作室-免费Python教学视频,论坛  里面有GUI开发的免费视频http://bbs.fishc.com/f…