z****e 发帖数: 54598 | 1
最教条的是inner class那个,最简单的是enum,最常用的上spring
这个还好,我被问过第一个,proxy你用rmi当例子就好了
最后一个没怎么用过
这个难
这个还好,因为每次新版本出来,都有类似问题
1.5有什么新花样,1.6,1.7,现在1.8,也正常
就soft和weak那个有点恶心,其他都还好
core java的面试题就这样,比applet这个靠谱很多 |
|
z****e 发帖数: 54598 | 2 跑不跑出去都只限制了stack里面的访问权限
heap只要能被reference到就会出现并发冲突
丢给d一个static就挂了
所有选择看,显然e是最合适的答案
也许e不严密,本来很多java问题就不是那么严谨
如果对方要深入讨论,那就展开
就像用==比较enum一样,理论上可以,但是具体到垮虚拟机的操作的时候
就会出问题,所以很多java问题都是用最nc最简单的方法就好了
比如对于非primitive types的比较,一律用.equals方法
比如对于线程安全,只要是非thread safe类/对象,如有需要
多线程环境一律用synchronized关键字
这些东西深究下去一知半解的反而容易出错
jvm的实现本来就不是啥必修 |
|
w*****j 发帖数: 226 | 3 用自动机写的
求批判
个人觉得自动机的好处是可视化,只要图画对,代码不容易写错
corner case看得也比较清楚
enum State
{
ErrorState
{
@Override
public boolean isValid() { return false; }
},
EndState,
StartState
{
@Override
public State readDigit() { return DigitState; }
@Override
public State readPlus() { return PlusState; }
@Override
public State readMinus() { return MinusState; }
@Override
public State readPoin... 阅读全帖 |
|
w*****j 发帖数: 226 | 4 用自动机写的
求批判
个人觉得自动机的好处是可视化,只要图画对,代码不容易写错
corner case看得也比较清楚
enum State
{
ErrorState
{
@Override
public boolean isValid() { return false; }
},
EndState,
StartState
{
@Override
public State readDigit() { return DigitState; }
@Override
public State readPlus() { return PlusState; }
@Override
public State readMinus() { return MinusState; }
@Override
public State readPoin... 阅读全帖 |
|
f**********t 发帖数: 1001 | 5 写blackJack, 定义Suit之后怎么着都通不过。求大牛指点。
class Card {
public:
enum Suit { CLUBS = 1, SPADE = 2, DIAMOND = 3, HEART = 4 };
private:
int value_;
Suit suit_;
public:
Card(int value, Suit suit) {
value_ = value;
suit_ = suit;
}
int Value() {
return value_;
}
Suit Suit() {
return suit_;
}
};
class BlackJackCard : public Card {
public:
BlackJackCard(int value, Suit suit):Card(value, suit) {
} //这里出错:function Card::Suit is not a type... 阅读全帖 |
|
k****5 发帖数: 546 | 6 two Card::Suit symbol, it's confusing.
rename one of them or use "enum Suit" instead of "Suit" |
|
h*********n 发帖数: 39 | 7 typedef enum Suit{…} Suit; |
|
b******i 发帖数: 914 | 8 Hi, not so hard using recursion:
Explanation:
For every index, I maintain three states: ONEBYTE (single byte),
TWOBYTEFIRST (1st element of a two-byte), TWOBYTELAST (2nd element of a two-
byte). If you now the state of i-1'th element, you can deduce the state of i
'th.
One minor case is that if the last element is identified as the first byte
of a two-byte, the below logic still returns one-byte. But this can be
modified.
------------------------
class Solution {
public:
int last_byte_class(... 阅读全帖 |
|
b**********5 发帖数: 7881 | 9 ? So i am assuming it will be a queue of PrintTask u defined above.
So are u saying i should start 3 producer threads for 3 devices? But if u
already include device enum in the printtask, then why do u need 3 different
threads for each? |
|
g*****g 发帖数: 34805 | 10 You don't need to start any producer thread. threadpool is about consumer.
An enum is enough to mark the producer.
different |
|
j********l 发帖数: 325 | 11 enum AttackResponse {
HIT, MISS, SUNK, END
}
class Ship {
private List parts;
GameBoard board;
void addPart(Coordination coor) {
parts.add(coor);
}
void removePart(Coordination coor) {
parts.remove(coor);
}
boolean hasSunk() {
return parts == null || parts.size() == 0;
}
}
class Coordination {
private int x;
private int y;
}
class Playe... 阅读全帖 |
|
S*******C 发帖数: 822 | 12 The best way to define Color is enum. |
|
a*****f 发帖数: 6 | 13 leetcode上ValidNumber这道题有点烦,因为它的需求不明确
试了很多次,下面的代码通过了测试,供参考
public class Solution {
enum Token {Empty, Sign, Float, Int, IntWithSign, Invalid};
int findFirst(char[] s, char c, int p1, int p2) {
for (int i = p1; i <= p2; i ++)
if (s[i] == c) return i;
return -1;
}
int findLast(char[] s, char c, int p1, int p2) {
for (int i = p2; i >= p1; i --)
if (s[i] == c) return i;
return -1;
}
Tok... 阅读全帖 |
|
b*********n 发帖数: 26 | 14 最近onsite被问了一道题,面试官貌似是想让我写代码,但我怎么都感觉这是个设计题。
到现在还不知道这题应该怎么解。
题目是这样的:
实现两个function :recordEvent 和 getCount
recordEvent 记录不同的eventName.
getCount 需要能够拿到一段时间内不同granularity 下不同eventName 的count。
具体如下:
enum granularity {
DAY, HOUR, MINUTE
}
/**
* A new event came, will call this function
* @param eventName
* @param timestamp
*/
public void recordEvent (String eventName, long timestamp) {
}
/**
*
* @param eventName
* @param gType
* @p... 阅读全帖 |
|
k**l 发帖数: 2966 | 15 transaction 弄成字符串(or enum function+data)先存着?
commit的时候再操作 |
|
h******e 发帖数: 52 | 16 设计一个 data structure something like excel's cell.
The cell has two types: value type and formula type (sum of other cells). My
design is as below.
Class Cell
{
rowId;
ColId;
type; //enum-> value or sum of other cells
Value; //if type is value, this field is the value, otherwise
meaningless
List cell; // if type is forumla, the field is used to show which
other cells are needed to sum
}
是不是还有更好的design? | |
|
f*******r 发帖数: 976 | 17 能否展开来讲解?
cells
设计一个 data structure something like excel's cell.
The cell has two types: value type and formula type (sum of other cells). My
design is as below.
Class Cell
{
rowId;
ColId;
type; //enum-> value or sum of other cells
Value; //if type is value, this field is the value, otherwise
meaningless
List cell; // if type is forumla, the field is used to show which
other cells are needed to sum
}
是不是还有更好的design? | |
|
b***r 发帖数: 4186 | 18 挺靠谱的,组里一个三姐QA,以前没有合作过太多不了解,后来一个大feature让她给
测,笨到把我震惊了。
首先什么都不懂,来了一年怎么拿最新code都不知道,我每天一半时间在看她env出了
什么问题。
java code 不编译直接提交。有一天提交三个东西break了三个不同的地方。我气死了
,直接截屏发给老板。最荒谬的是有个东西我说你不用测,loop到他的时候直接skip就
可以了,回头一看,她把我那个enum entry直接comment 掉了。。。
最烂的是嘴坏,自己的东西有问题,开会说我拿了babar最新的code,现在我的系统有
这个问题。
据组里人说就这样这个三姐还比前面那个三姐强十倍,前面那个拿到新offer就走人了
。。。都是三哥经理找来的。 |
|
z****e 发帖数: 54598 | 19
switch在几十个判断时候,跟hashmap的那种判断差别不大
就是几十次操作跟可能是一次操作的差异
jvm在我机器上,一秒可以执行大改2万次复杂的操作
比如new一个对象酱紫,所以几十次的节省在这里不会有太大的差异
如果是几万次,也许会有一两秒的差异
这里主要问题是这几十个statement看上去比较恶心
最好用上反射,通过enum直接获取class后执行
或者用visitor |
|
S*******C 发帖数: 822 | 20 这里需要用几十个数值和相应对象一对一绑定, 用enum不合适,可能我一开始没说清楚 |
|
z****e 发帖数: 54598 | 21
清楚
可以啊,直接在enum里面保留对象的reference
然后直接get出来就好了 |
|
g*****g 发帖数: 34805 | 22 几十个 enum挨个找都没多久,瓶颈从来不在这种地方。 |
|
s*********p 发帖数: 130 | 23 那应该扔出那个exception 啊?如果输入没有重复的话也不算invalid input 啊?
Error code 应该怎么操作?enum ?
exceptionthis doesn't matter production or not. should always throw
exception or return ........ |
|
r****i 发帖数: 528 | 24 没有重复的是正常结果之一,为什么要抛exception?return null 可以,或者更明确
点可以返回是一个对象,包含一个enum(notfound,found,其它特俗情况)和一个
string |
|
m******0 发帖数: 222 | 25 比如你去面试,人家出个设计题,让你设计识别这种重复报销的系统,其实很简单:
把下面函数做成remote procedure call:
double GoogleCost(String full_name, Date date, enum Type {lunch, dinner});
if ( GoogleCost(WSN, interview_day, Type.dinner) - LinkedinCost(WSN,
interview_day, Type.dinner) <= 10.0 )
{
AddToBlackList( WSN, expiration.5_years );
} |
|
发帖数: 1 | 26 是不是要和已有的record进行比较,
Assuming 报销的Simple DB is as follows:
Id/full_name/date/time/place/type{lunch,dinner}/Reason(with interview
company name)
boolean validateCost(String name, DateTime datetime, String place, Enum type
, Reason){
if(db.get(name) && db.get(datetime) && db.get(place) && db.get(reason))
addToBlackList(name);
} |
|
b**********f 发帖数: 136 | 27 Java 小白,实在不知道怎么做。求大侠解答!下周就要去面试了,不是Java
developer的职位,但是会考到一点编程。
public class Person {
Person father;
Person mother;
Gender gender;
Integer age;
List children;
int level = 0;
public enum Gender {
Male,
Female;
}
}
For the above class, you basically have to implement 2 methods.
public List getOldestSisters()
(person can have multiple parents since remarrying )
public List getGreatestAncestors()
Find the oldest sisters of the given... 阅读全帖 |
|
j*r 发帖数: 23 | 28 public class Person {
Person father;
Person mother;
Gender gender;
Integer age;
List children;
int level = 0;
public enum Gender {
Male,
Female;
}
}
public List getOldestSisters() {
Person parent = father;
if (parent == null) {
parent = mother;
}
if (parent == null) {
return null;
}
Person oldestSister = null;
List siblings = pa... 阅读全帖 |
|
y****3 发帖数: 131 | 29
public class Monotonic {
enum type {
increasing, decreasing, undefined
}
public boolean isMonotonic(int[] input) {
if (input == null || input.length <= 1)
return true;
type mono_type = type.undefined;
for (int i = 0; i < input.length - 1; i++) {
if (input[i] > input[i+1]) {
if (mono_type == type.increasing) return false;
mono_type = type.decreasing;
}
else if (input[i] < i... 阅读全帖 |
|
W***o 发帖数: 6519 | 30 我onsite 也遇到了这个问题,感觉答的不错,因为最后面试官问我关于朋友的朋友的
问题时,我的回答对他很有共鸣。
我onsite前读了下面这个engineering blog两遍,感觉挺有启发意义:
https://www.facebook.com/notes/facebook-engineering/under-the-hood-building-
out-the-infrastructure-for-graph-search/10151347573598920/
其实每个timeline的帖子可以携带metadata,这些metadata就是系统设计的trade-off
,因为为了避免重复读取数据库;如果有数据库操作,比如删除或屏蔽一个朋友,
这个时候可以利用pub-sub来对相应的metadata进行更改
对某些用户组,我当时参考了unix/linux的用户组设计,用户自己设置一个enum来区别
每个用户组,比如就用id value: 1, 2, 3, 4 来给用户分组 |
|
r*****s 发帖数: 1815 | 31 大概这就是fb和我们作坊的思路区别。。。
我们这地方喜欢独立的service,所以尽量少加metadata。。。都是另开一坨。。。
: 我onsite 也遇到了这个问题,感觉答的不错,因为最后面试官问我关于朋友的
朋友的
: 问题时,我的回答对他很有共鸣。
: 我onsite前读了下面这个engineering blog两遍,感觉挺有启发意义:
: https://www.facebook.com/notes/facebook-engineering/under-the-hood-
building-
: out-the-infrastructure-for-graph-search/10151347573598920/
: 其实每个timeline的帖子可以携带metadata,这些metadata就是系统设计的
trade-off
: ,因为为了避免重复读取数据库;如果有数据库操作,比如删除或屏蔽一个朋友,
: 这个时候可以利用pub-sub来对相应的metadata进行更改
: 对某些用户组,我当时参考了u... 阅读全帖 |
|
z*********n 发帖数: 1451 | 32
街霸哥赶快建个自动刷题库:
#include "street_fighter_solver.h"
..
..
//enum SupportedOjName{leetcode, poj, cf,...};
SFSolver *oj = SFSolverFactory.createFor(leetcode);
return oj.solve(current_problem_number); |
|
d****g 发帖数: 7460 | 33 严重同意。话说昨天我看见"朱好大"提"实数公理",不明觉厉,惭愧难当,遂去古
狗。发现了个对数学高屋建瓴的综述:WIKIPEDIA。。觉得挺有收获。
http://en.wikipedia.org/wiki/Areas_of_mathematics
1Foundations
1.1Arithmetics:The study of quantity.
1.2Algebra:
1.2.1 elementary algebra.
numbers, first the familiar natural numbers and integers and their
arithmetical operations
1.2.2 number theory.The deeper properties of these numbers
1.2.3 abstract algebra. The investigation of methods to solve equations
among other things, studies rings and fields, structures that g... 阅读全帖 |
|
|
c**********r 发帖数: 472 | 35 工作六个月,真是他妈的觉得这老板傻逼。
1. 刚来这公司我就觉得他奇怪,妈的看人瞪着眼睛,态度说话语气都不温和,不过这
就算了。
2. 讲话还打断别人,说个不停,要说你谁都打断也就算了,只打断下级说话,在上级
面前和孙子似的,话少多了。
3. 你要是有个什么不好的事,他还幸灾乐祸笑话你。我要是停车吃了罚单都不会在公
司说,不然他都能乐开花。
4. 要是你说错一句英语,用错一个单词,他也笑话你,还学给别的同事说,自己连the
都读成de不说。
5. 工作6年,现在混上team lead,技术差的要命,别说多线程环境下不会thread safe
了,妈的那天发现他连enum是int都不知道。
6. 比较会狡辩,狡辩的方法也就是偷换概念,搞一些极端的例子来论证。
7.好为人师,动不动就说,let me show you something。喜欢用祈使语气说Remember
XXXX。 那天我给他code review,他搞的和老师一样,show自己的singlton pattern,
又说remember 这个那个。我一看,singlton pattern个屁,都不hold住referenc... 阅读全帖 |
|
c**********r 发帖数: 472 | 36 工作六个月,真是他妈的觉得这老板傻逼。
1. 刚来这公司我就觉得他奇怪,妈的看人瞪着眼睛,态度说话语气都不温和,不过这
就算了。
2. 讲话还打断别人,说个不停,要说你谁都打断也就算了,只打断下级说话,在上级
面前和孙子似的,话少多了。
3. 你要是有个什么不好的事,他还幸灾乐祸笑话你。我要是停车吃了罚单都不会在公
司说,不然他都能乐开花。
4. 要是你说错一句英语,用错一个单词,他也笑话你,还学给别的同事说,自己连the
都读成de不说。
5. 工作6年,现在混上team lead,技术差的要命,别说多线程环境下不会thread safe
了,妈的那天发现他连enum是int都不知道。
6. 比较会狡辩,狡辩的方法也就是偷换概念,搞一些极端的例子来论证。
7.好为人师,动不动就说,let me show you something。喜欢用祈使语气说Remember
XXXX。 那天我给他code review,他搞的和老师一样,show自己的singlton pattern,
又说remember 这个那个。我一看,singlton pattern个屁,都不hold住referenc... 阅读全帖 |
|
P******5 发帖数: 4868 | 37 public enum Sex { MALE, FEMALE }
泥马这还能怎么换? |
|
s*****m 发帖数: 8094 | 38 public enum Sex {
MALE, // has 1 male reproduction part, no female reproduction part. And
only fucks female
FEMALE, // has 1 female reproduction part, no male reproduction part. And
only fucks male
OTHERS, // may have any number of combination of male/female reproduction
parts, and may wish to fuck anybody or anything.
} |
|
w****e 发帖数: 707 | 39 1. 刚来公司我就觉得他奇怪,妈的看人瞪着眼睛,态度说话语气都不温和,不过这
就算了。
2. 讲话还打断别人,说个不停,要说你谁都打断也就算了,只打断下级说话,在上级
面前和孙子似的,话少多了。
3. 你要是有个什么不好的事,他还幸灾乐祸笑话你。我要是停车吃了罚单都不会在公
司说,不然他都能乐开花。
4. 要是你说错一句英语,用错一个单词,他也笑话你,还学给别的同事说,自己连the
都读成de不说。
5. 技术差的要命,别说多线程环境下不会thread safe
,妈的那天发现他连enum是int都不知道。
6. 比较会狡辩,狡辩的方法也就是偷换概念,搞一些极端的例子来论证。
7.好为人师,动不动就说,let me show you something。喜欢用祈使语气说Remember
XXXX。 那天我给他code review,他搞的和老师一样,show自己的singlton pattern,
又说remember 这个那个。我一看,singlton pattern个屁,都不hold住reference。经
常让我code review的时候其实他code都没写完,说是code r... 阅读全帖 |
|
W*******e 发帖数: 1268 | 40 先抛砖引玉总结一下个人使用Java经历,从用HotJava开始,第一个IDE用的是Symatec
Cafe,到现在的Eclipse和JDeveloper,看看知识有没有跟上现在的潮流,需要哪些改
进的地方请砸砖。对新的Java开发员如果有用的地方请给包子鼓励。
Java开发人员知识点
1.听说过James Gosling,SUN和Oracle公司。知道网上下载Java的地址,在哪讨论Java
。练习过Java在Windows下的安装和配置。知道Java应用系统中常见的几种license。了
解bytecode和Java在不同系统下可以轻松移植的原理。
2.懂得基本的Java编程和行命令格式。了解面向对象的编程思路。
几个基本点:Java基本语法和控制结构,命名和代码风格,结构化,对象封装,继承,
抽象,多态,接口,异常处理,堆空间,栈空间,垃圾回收器,static,this,
synchronized,annotations,JUnit,JDBC,JSP/servlet
Java Core APIs: java.lang,java.util,java.io,java.awt,javax... 阅读全帖 |
|
x**n 发帖数: 12542 | 41 ☆─────────────────────────────────────☆
Westridge (西岭) 于 (Wed Apr 18 00:03:19 2012, 美东) 提到:
Java开发人员知识点
1.听说过James Gosling,SUN和Oracle公司。知道网上下载Java的地址,在哪讨论Java
。练习过Java在Windows下的安装和配置。知道Java应用系统中常见的几种license和JCP。了
解bytecode和Java在不同系统下可以轻松移植的原理。
2.懂得基本的Java编程和行命令格式。了解面向对象的编程思路。
几个基本点:Java基本语法和控制结构,命名和代码风格,结构化,对象封装,继承,
抽象,多态,接口,异常处理,堆空间,栈空间,垃圾回收器,static,this,
synchronized,annotations,JUnit,JDBC,JSP/servlet
Java Core APIs: java.lang,java.util,java.io,java.awt,javax.swing,JFrame
,String,java.sql... 阅读全帖 |
|
p*********w 发帖数: 23432 | 42 把CNNIC的假证书扫地出门zz
by GFW BLOG 功夫网与翻墙
来源:http://www.librehat.info/04/wipe-out_cnnic-ca/
为什么要将CNNIC扫地出门,事情真的有这么严重?
网上传输的任何信息都有可能被恶意截获。尽管如此,我们仍然在网上保存着很多重要
的资料,比如私人邮件、银行交易。这是因为,有一个叫着 SSL/TLS/HTTPS 的东西在
保障我们的信息安全,它将我们和网站服务器的通信加密起来。
如果网站觉得它的用户资料很敏感,打算使用 SSL/TLS/HTTPS 加密,必须先向有 CA (
Certificate Authority) 权限的公司/组织申请一个证书。有 CA 权限的公司/组织都
是经过全球审核,值得信赖的。
发生了什么事
最近,CNNIC——对,就是那个臭名昭著的利用系统漏洞发布流氓软件的、就是那个使
劲忽悠 CN 域名又突然停止域名解析的 CNNIC (中国互联网络信息中心),它——偷偷
地获得了 CA 权限!在所有中文用户被隐瞒的情况下!
意味着什么
意味着 CNNIC 可以随意造一个假的证书给任何网站,替换网站... 阅读全帖 |
|
|
i****a 发帖数: 36252 | 44 【 以下文字转载自 SanFrancisco 讨论区 】
发信人: PigHead5 (猪头五), 信区: SanFrancisco
标 题: code review 没通过, 让换个不那么sensitive的说法
发信站: BBS 未名空间站 (Wed Sep 23 12:36:11 2015, 美东)
public enum Sex { MALE, FEMALE }
泥马这还能怎么换? |
|
p*a 发帖数: 3350 | 45 public enum xxoo {xx,oo} |
|
c******n 发帖数: 16666 | 46 public enum human { humanA, humanB } |
|
|
|
|