Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Foo {
- private static Integer num_instances = 0, MAX = 3;
- public Foo() throws Exception {
- synchronized(Foo.num_instances) {
- if(Foo.num_instances > MAX) throw new Exception();
- Foo.num_instances++;
- }
- }
- }
- class Foo {
- private static Integer num_instances = 0, MAX = 3;
- public Foo try_to_get_a_new_foo() {
- synchronized(Foo.num_instances) {
- if(Foo.num_instances > MAX) return null;
- Foo.num_instances++;
- return new Foo();
- }
- }
- }
- class Foo {
- private static Integer num_instances = 0, MAX = 3;
- public Foo try_to_get_a_new_foo() {
- synchronized(Foo.num_instances) {
- if(Foo.num_instances > MAX) return null;
- Foo.num_instances++;
- return new Foo();
- }
- }
- public void finalize() {
- synchronized(Foo.num_instances) {
- Foo.num_instances--;
- }
- super.finalize();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement