java anonymous inner class
My current understanding of anonymous classes is that they facilitate and flexibly implement interfaces and abstract class methods. If you only need to implement the corresponding usage of an object in one place, then you can consider using anonymous inner classes~ . Just saying it will definitely make you dizzy, so let’s talk with a small example:
Quote
The following example is a common method of binding events to buttons in Android
Java code
public class Activity1 extends Activity { OnClickListener listener1 = null; Button button1; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity1); listener1 = new OnClickListener() {//OnClickListener是一个接口 public void onClick(View v) {//onClick()方法是这个借口唯一的方法 Bundle bundle = new Bundle(); bundle.putString("store", "数据来自Activity1"); Intent mIntent = new Intent(); mIntent.putExtras(bundle); setResult(RESULT_OK, mIntent); finish(); } }; button1 = (Button) findViewById(R.id.button3); button1.setOnClickListener(listener1); ... ... ...(还有代码在下面~)
This uses internal classes, the reason The reason is that when this button is pressed, only one event dedicated to it will be triggered, and there will be no other events, so using internal classes can complete the implementation and execution of the action at the same time! It's a bit like the anonymous function of javascript~
Here are a few small examples:
Java code
package com.eoeAndroid.activity; interface OnClickListener{ void onClick(String s); } public class testListener { public static void main(String... strings){ OnClickListener listener = new OnClickListener(){ @Override public void onClick(String s) { // TODO Auto-generated method stub System.out.println(s); } }; listener.onClick("OK!"); } }
This code is equivalent to referencing the OnClickListener interface after implementation, just like the following code:
Java code
package com.eoeAndroid.activity; interface OnClickListener{ void onClick(String s); } class MyListener implements OnClickListener{ @Override public void onClick(String s) { // TODO Auto-generated method stub System.out.println(s); } } public class testListener { public static void main(String... strings){ MyListener listener = new MyListener(); listener.onClick("OK!"); } }
For more articles related to java anonymous internal classes, please pay attention to the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Java's classloading involves loading, linking, and initializing classes using a hierarchical system with Bootstrap, Extension, and Application classloaders. The parent delegation model ensures core classes are loaded first, affecting custom class loa

The article discusses implementing multi-level caching in Java using Caffeine and Guava Cache to enhance application performance. It covers setup, integration, and performance benefits, along with configuration and eviction policy management best pra

The article discusses using JPA for object-relational mapping with advanced features like caching and lazy loading. It covers setup, entity mapping, and best practices for optimizing performance while highlighting potential pitfalls.[159 characters]

The article discusses using Maven and Gradle for Java project management, build automation, and dependency resolution, comparing their approaches and optimization strategies.

The article discusses creating and using custom Java libraries (JAR files) with proper versioning and dependency management, using tools like Maven and Gradle.
