小编San*_*mar的帖子

580
推荐指数
10
解决办法
34万
查看次数

Java中的抽象与封装

可能重复:
抽象VS信息隐藏VS封装

我知道这个问题可能已经在这个论坛上被问了几千次,甚至net也充满了关于这些概念的许多定义,但所有声音都相同,并且都使用相同的技术词汇.例如以下定义

封装是将数据和对数据进行操作的代码绑定或包装到单个实体中的过程.这样可以保护数据免受外部接口和误操作的影响.考虑封装的一种方法是作为保护包装器,防止代码和数据被包装器外部定义的其他代码任意访问.

我从上面的定义中理解的是创建变量,将它们标记为私有并为这些变量生成getter-setter,并使用object来访问那些getter和setter.这样,数据就隐藏在对象内部,只能通过对象访问.希望我是对的.


抽象是Java中的过程,用于隐藏某些细节并仅显示对象的基本特征.换句话说,它处理对象(界面)的外部视图.

现在这是让我困惑的部分.每当我想到抽象时,我想到的东西就是抽象类(可能因为它们都有Abstract关键字).上面的定义说抽象意味着隐藏数据并且只显示所需的细节,但这是我们在封装中已经做的事情吗?然后有什么区别.此外,我没有得到对象的侧视图,它处理对象的外部视图.

有人可以用一些现实生活中的例子,或者如果可能的话,用一些程序化的例子来说明这一点.

java oop concept

84
推荐指数
3
解决办法
25万
查看次数

如何使用html5和(canvas或svg)绘制网格

我想绘制一个如图所示的网格,但我完全不知道我应该从哪里开始.我应该使用SVG还是应该使用CanvasHTML5以及如何绘制它.
请指导一下.我希望这个网格在其上绘制矩形,圆形或其他图表,我将计算该图的面积,如方形区域.

在此输入图像描述

html5 svg html5-canvas

64
推荐指数
3
解决办法
4万
查看次数

java HashMap碰撞

我正在阅读有关hashmap如何工作的内容.我正在阅读 "如果两个不同的对象具有相同的哈希码将会发生什么".

根据它,如果两个对象具有相同的哈希码,两者都将被存储,LinkedList但据我所知,如果两个哈希码然后前一个将被覆盖新的哈希码(如果我错了,请纠正我).

有人可以更多地了解hashmap如何在内部使用对象作为键,如果两个对象具有相同的哈希码以及如何使用两个对象获取将会发生什么get()

java hashmap

29
推荐指数
2
解决办法
3万
查看次数

同步(this)vs synchronize(MyClass.class)

可能重复:
.class的Java同步块

我正在阅读有关同步的文章.我对以下几点感到困惑,需要进一步澄清

1)用于同步块.怎么样

   synchronize(this){
    // code
   }
Run Code Online (Sandbox Code Playgroud)

不同于

   synchronize(MyClass.class){
    //code
   }
Run Code Online (Sandbox Code Playgroud)

2)同步实例方法意味着线程必须获得对实例的独占锁定,而同步静态方法意味着线程必须获取整个类的锁定(如果我错了,请纠正我).因此,如果一个类有三个方法,其中一个是静态同步的,那么如果一个线程获得该方法的锁定,那么这意味着它将获得对整个类的锁定.那么这是否意味着其他两个也将被锁定,没有其他方法可以访问这两个方法,因为整个类都有锁定?

java synchronization

25
推荐指数
2
解决办法
3万
查看次数

未绑定通配符与原始类型之间的差异

我正在阅读关于泛型的内容,我不明白是否需要未绑定的通配符以及它与原始类型的区别.我读了这个问题,但仍然没有弄清楚.在未绑定的通配符Java教程页面中,我得到了以下两点,我没有理解第一点:

  • 如果您正在编写可以使用Object类中提供的功能实现的方法.
  • 当代码使用泛型类中不依赖于类型参数的方法时.例如,List.size()List.clear().事实上,Class<?>经常使用,因为大多数方法Class<T>都不依赖T.

有人可以用外行语言解释未绑定的通配符和原始类型之间的区别.

List<?>什么不同List<Object>

java generics unbounded-wildcard

23
推荐指数
4
解决办法
5820
查看次数

如何在Toad中调试存储过程?

我安装了Oracle 10g,并且有一个包含许多游标和过程的包,如何调试其中一个过程或游标.你能为此提供一些步骤吗?我运行了Google搜索,但没有找到任何指定如何从程序包调试特定过程的内容.

oracle debugging toad stored-procedures

20
推荐指数
1
解决办法
9万
查看次数

jQuery日期排序

可能重复:
通过将字符串转换为日期格式进行Javascript日期排序

我不擅长jquery所以我想知道是否有一种方法或插件我可以用它来排序日期div.我在YYYY有约会:MM:DD HH:MM:SS格式.我在div中显示日期,如下所示.Div是无序格式,我想先在最新日期对它们进行排序.

<div id="dateDiv">2012-04-15 10:25:45</div>
<div id="dateDiv">2012-04-10 19:41:08</div>
<div id="dateDiv">2012-04-20 07:00:10</div>
<div id="dateDiv">2012-04-12 16:45:50</div>
Run Code Online (Sandbox Code Playgroud)

谢谢

javascript sorting jquery datetime

10
推荐指数
2
解决办法
3万
查看次数

Java集合没有Map作为集合框架的一部分

如果您查看集合框架,您将看到以下内容,但Map不在接口列表中.当我们谈论地图时,我们说它是集合框架的一部分,所以如果Map是集合框架的一部分,那么为什么它不在接口列表中.

 java.util
Interface Collection

All Known Subinterfaces:
    BeanContext, BeanContextServices, List, Set, SortedSet

All Known Implementing Classes:
    AbstractCollection, AbstractList, AbstractSet, ArrayList, BeanContextServicesSupport, BeanContextSupport, HashSet, LinkedHashSet, LinkedList, TreeSet, Vector 
Run Code Online (Sandbox Code Playgroud)

java collections map

9
推荐指数
2
解决办法
2万
查看次数

如何用selenium滚动页面

我正在使用FirefoxDriver webdriver.在firefox窗口中加载的页面是一个大页面,我想使用selenium滚动该页面.

我想知道如何做到这一点.

谢谢.

java selenium

8
推荐指数
1
解决办法
3万
查看次数