1.Java约定俗成

java约定俗成
1,类名接口名 一个单词首字母大写,多个单词每个单词首字母都大写
2,方法名和变量名 一个单词全部小写,多个单词从第二个单词首字母大写
建议:如果能用英语尽量用英语,实在不行用汉语拼音
代码书写格式
1,大括号成对写,左大括号在该行代码的最后,右大括号在该行代码的下边,并与该行代码对齐
2,左大括号前面有空格
3,并排语句中间都需要加空格
4,语句块或者方法中间加空行

2.面向对象的特点

面向对象思想特点
* a:是一种更符合我们思想习惯的思想
* b:可以将复杂的事情简单化
* c:将我们从执行者变成了指挥者
* 角色发生了转换
* A:面向对象开发
* 就是不断的创建对象,使用对象,指挥对象做事情。
* B:面向对象设计
* 其实就是在管理和维护对象之间的关系。
* C:面向对象特征
* 封装(encapsulation)
* 继承(inheritance)
* 多态(polymorphism)

3.类、对象

* A:我们学习编程是为了什么
* 为了把我们日常生活中实物用学习语言描述出来
* B:我们如何描述现实世界事物
* 属性 就是该事物的描述信息(事物身上的名词)
* 行为 就是该事物能够做什么(事物身上的动词)
* C:Java中最基本的单位是类,Java中用class描述事物也是如此
* 成员变量 就是事物的属性
* 成员方法 就是事物的行为
* D:定义类其实就是定义类的成员(成员变量和成员方法)
* a:成员变量 和以前定义变量是一样的,只不过位置发生了改变。在类中,方法外。
* b:成员方法 和以前定义方法是一样的,只不过把static去掉,后面在详细讲解static的作用。
* E:类和对象的概念
* a:类:是一组相关的属性和行为的集合
* b:对象:是该类事物的具体体现
* c:举例:
* 类 学生
* 对象 具体的某个学生就是一个对象

4.案例演示

* A:学生事物
* B:学生类
* C:案例演示
* 属性:姓名,年龄,性别
* 行为:学习,睡觉 * class Student {
String name;
int age;
char gender;
public void study() {
System.out.println(name+"在睡觉");
}
public void sleep() {
System.out.println(name+ "在学习");
}
}
** 属性:品牌(brand)价格(price)
* 行为:打电话(call),发信息(sendMessage)玩游戏(playGame)
class Phone {
String brand;
int price;
char color;
public void call() {
System.out.println(brand+"打电话");
}
public void sendMessage() {
System.out.println(brand+ "发短信");
}
public void playGame() {
System.out.println("打游戏");
}
}

5.成员变量和局部变量的区别

* A:在类中的位置不同
* 成员变量:在类中方法外
* 局部变量:在方法定义中或者方法声明上(参数)
* B:在内存中的位置不同
* 成员变量:在堆内存(成员变量属于对象,对象进堆内存)
* 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
* C:生命周期不同
* 成员变量:随着对象的创建而存在,随着对象的消失而消失
* 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
* D:初始化值不同
* 成员变量:有默认初始化值
* 局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。 * 注意事项:
* 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。

6.方法的形式参数或返回值是类名的时候如何调用
  * A:方法的参数是类名
      * 如果你看到了一个方法的形式参数是一个类类型(引用类型),这里其实需要的是该类的对象。
  * B:方法的返回值是类名
      * 如果你看到了一个方法的返回值是类名,这里其实返回的是该类对象

7.匿名对象的概述和应用

* A:什么是匿名对象
* 没有名字的对象
* B:匿名对象应用场景
* a:调用方法,仅仅只调用一次的时候。
* 那么,这种匿名调用有什么好处吗?
* 节省代码
* 注意:调用多次的时候,不适合。匿名对象调用完毕就是垃圾。可以被垃圾回收器回收。
* b:匿名对象可以作为实际参数传递

8.封装的概述

* A:封装概述
* 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
* B:封装好处
* 隐藏实现细节,提供公共的访问方式
* 提高了代码的复用性
* 提高安全性。
* C:封装原则
* 将不需要对外提供的内容都隐藏起来。
* 把属性隐藏,提供公共方法对其访问。

9.private关键字的概述和特点

* A:人类赋值年龄的问题
* B:private关键字特点
* a:是一个权限修饰符(最小的)
* b:可以修饰成员变量和成员方法
* c:被其修饰的成员只能在本类中被访问
* C:案例演示
* 封装和private的应用:
* A:把成员变量用private修饰
* B:提高对应的getXxx()----获得,和setXxx()----修改,有参数,方法
* private仅仅是封装的一种体现形式,不能说封装就是私有

10. this关键字特点
    * 方法被哪个对象调用,this就代表那个对象, 
    * 可以用来区分成员变量和局部变量重名的。

类、对象(java基础知识六)的更多相关文章

  1. java 基础知识六 字符串2

    java  基础知识六  字符串2 1.String类是final类,也即意味着String类不能被继承,并且它的成员方法都默认为final方法 . String 是不可变对象,也就是一旦创建,那么整 ...

  2. java 基础知识六 字符串1

    java  基础知识六  字符串1 String 不是java的基本数据类型 String 不是java的基本数据类型 String 不是java的基本数据类型 字符串是是一个字符序列 1.创建 创建 ...

  3. 第二十九节:Java基础知识-类,多态,Object,数组和字符串

    前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...

  4. java基础知识回顾之---java String final类普通方法

    辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /*     * 按照面向对象的思想对字符串进行功能分类.     *      ...

  5. Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  6. 毕向东—Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  7. 大话java基础知识一之为什么java的主函数入口必须是public static void

    为什么java的主函数入口必须是public static void main (String[] args); 很多写javaEE好几年的程序员经常会记得java的主函数就是这么写的,但实际上为什么 ...

  8. 黑马毕向东Java基础知识总结

    Java基础知识总结(超级经典) 转自:百度文库 黑马毕向东JAVA基础总结笔记    侵删! 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部 ...

  9. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

随机推荐

  1. 窗口(codevs 4373)

    题目描述 Description 给你一个长度为N的数组,一个长为K的滑动的窗体从最左移至最右端,你只能见到窗口的K个数,每次窗体向右移动一位,如下表: Window position Min val ...

  2. 【shell】shell编程(三)-if,select,case语句

    通过前两篇文章,我们掌握了shell的一些基本写法和变量的使用,以及基本数据类型的运算.那么,本次就将要学习shell的结构化命令了,也就是我们其它编程语言中的条件选择语句及循环语句. 不过,在学习s ...

  3. 前端开发之html篇

    一.什么是html? 1.我们说socket网络编程的时候,提到过一个cs模型,就是客户端—服务端模型,前端开发也是基于网络编程,但是这时就应该是bs模型了,是浏览器与服务端的通信. 我们可以模拟一个 ...

  4. MVC RPC SOA 和微服务架构的区别

    MVC RPC SOA 微服务架构的区别 单体架构 MVC(Model View Controller) M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使 ...

  5. 【spring boot jpa】hql语句报错 :antlr.NoViableAltException: unexpected token: roleName

    使用场景:在spring data jpa下使用@Query("hql语句") 然后在项目启动的时候报错 hql语句报错:antlr.NoViableAltException: u ...

  6. three.js 源代码凝视(九)Math/Matrix4.js

    商域无疆 (http://blog.csdn.net/omni360/) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:商域无疆 -  本博客专注于 敏捷开发 ...

  7. 百科知识 手机QQ的视频如何保存

    手机QQ上打开一个视频,然后进入播放界面,然后暂停播放   点击右上角的按钮,就可以保存到手机        

  8. POJ3420 Quad Tiling DP + 矩阵高速幂

    题目大意是用1*2的骨牌堆积成4*N的矩形.一共同拥有多少种方法,N不超过10^9. 这题和以前在庞果网上做过的一道木块砌墙差点儿一样. 由于骨牌我们能够横着放.竖着放.我们如果以4为列,N为行这样去 ...

  9. linked-list-cycle-ii——链表,找出开始循环节点

    Given a linked list, return the node where the cycle begins. If there is no cycle, returnnull. Follo ...

  10. ubuntu 16.04 更新后搜狗输入法无法输入中文的问题

    方法一:重启搜狗输入法 通过下面的两个命令重启搜狗输入法,看重启后是否可以正常使用: ~$ killall fcitx  ~$ killall sogou-qinpanel   方法二:检查修复安装依 ...