JAVA学习笔记之与C#对比
最近在学习java,刚学完入门课程...下面说一下入门课程中相对印象深刻的知识点
JAVA-C#差异
1. for循环
C#
string [] strarr=new string[5];
foreach( string i in strarr)
java
String[] strarr=new String[5];
foreach(String str:strarr)
2. 继承
C# 类后使用 : 可直接继承
java 使用 extends
3.java中final 关键字 最终的, 可以修饰类 变量 方法 属性
类: final public class xxx 是 类似于 C#中 sealed 密封类,不可以被继承
------------------------------------------------------------------分割线------后面继续补充-----------------------------
方法 :同类类似,使用sealed密封方法
变量: final=constant 常量 在定义是必须指定值,而且类的构造方法不初始化final 变量, 子类不可修改final 变量。
4.多态
自动转换,又下至上,由子往父 例如 动物类A 和继承动物类A的狗类B 类A=狗B
强制转换类型,由上至下, 例如 动物类A 和继承动物类A的狗类B 狗B=(狗)类A 可能会出现异常,溢出。较危险。
5.Interface 类似抽象类, 关键字 abstract 在定义是与C#一样, 以I 开头.
在java中创建接口和C#中一样,方法不需要有方法体,需要实现接口的类来override 方法
创建接口或接口的内部方法时我们可以不加abstract public interface IPlay{
} 系统默认会隐士变成 public abstract interface
6. java中 supper 关键字,类似于C#中的base关键字, 访问父类中的属性和方法.
而且在默认加载子类时,默认的无参构造参数中会在第一行增加supper()方法来构造父类,隐式添加
也可以我们自己写,必须加在第一行
7.java 中instanceof 关键字,用来匹配 当前类型是否为 instanceof 后的类型,返回布尔值.
1).对象实现一个接口,用这个对象和这个接口进行instanceof判断,都为true。
2).对象和父类进行instanceof判断,都为true
3).对象和他的子类进行instanceof判断为false
8. UML unified modeling language 统一建模语言
a.常用的UML工具
Visio , Rational Rose ,Power Design
b.常用UML三种图
用例图
能够以可视化的方式表达系统如何满足所搜集的业务规则.通常是用来描述在系统中出现的角色所具备的功能
序列图
描述角色和计算机内存中对象的关系,以什么顺序执行的,更关注序列.
类图 也叫 类别图
描述业务逻辑,结构性的信息,描述类和类之间的关系,类中有什么属性和方法.从不同的环节了解系统的功能.
9.“==” 和 equals() 有什么区别呢?
==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象
equals(): 比较存储在两个字符串对象中的内容是否一致
JAVA学习笔记之与C#对比的更多相关文章
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 20145231第二周Java学习笔记
20145231 <Java程序设计>第2周学习总结 教材学习内容总结 本周的学习采用的依然是先看课本,再看视频,然后实践敲代码,最后根据学习笔记总结完成博客. 第三章:基础语法 知识点比 ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
随机推荐
- 也谈面试必备问题之 JavaScript 数组去重
Why underscore (觉得这部分眼熟的可以直接跳到下一段了...) 最近开始看 underscore.js 源码,并将 underscore.js 源码解读 放在了我的 2016 计划中. ...
- 吉特仓库管理系统-ORM框架的使用
最近在园子里面连续看到几篇关于ORM的文章,其中有两个印象比较深刻<<SqliteSugar>>,另外一篇文章是<<我的开发框架之ORM框架>>, 第一 ...
- [转]struts2处理.do后缀的请求
原文地址:http://skyuck.iteye.com/blog/545988 默认情况下,struts2是无法处理以.do为后缀的请求url的(默认情况下是.action或者不填,可以参见org. ...
- js打开新页面与关闭当前页面
打开新的窗口window.open("help.html"); window.open("help.html"); 关闭页面<a href="j ...
- 【bzoj1913】 Apio2010—signaling 信号覆盖
http://www.lydsy.com/JudgeOnline/problem.php?id=1913 (题目链接) 题意 给出一个平面上n个点,求任选3个点画一个圆所包含的点的期望值. Solut ...
- ASP.NET MVC中viewData、viewBag和templateData的使用与区别
一:类型比较 1.1)ViewBag是动态类型(dynamic). 1.2)ViewData是一个字典型的(Dictionary)-->ViewDataDictionary. 1.3)TempD ...
- Android利用HttpURLConnection实现模拟登录
最近在做一个APP,需要模拟登录教务处,之前曾经用HttpClient做过,点这里,但是发现最新的Android SDK已经不支持Httpclient了,所以只好在琢磨一下HttpURLConnect ...
- ios开发网络知识 TCP,IP,HTTP,SOCKET区别和联系
TCP,IP,HTTP,SOCKET区别和联系 网络由下往上分为: 对应 物理层-- 数据链路层-- 网络层-- IP协议 传输层-- ...
- Container View 使用小技巧
一.传值,顺传 -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { TVC *vc = segue.destin ...
- Redis主-从部署实践
0. 前言 这篇文章简要介绍Redis的主从部署,实现了一主二从,使用两个哨兵监控,以实现简单的HA,其中从库作为备机. 1. 部署 这里有三台服务器,其中239主机上的Redis作为主库,其余两个作 ...