ਵਿਸ਼ਾ - ਸੂਚੀ
ਜਾਵਾ ਵਿੱਚ ਸਿੰਗਲ ਵੈਲਯੂ ਐਨੋਟੇਸ਼ਨ
ਸਿੰਗਲ ਵੈਲਯੂ ਐਨੋਟੇਸ਼ਨ, ਜਿਸਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਸਿੰਗਲ ਮੈਂਬਰ ਐਨੋਟੇਸ਼ਨ ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਮੈਂਬਰ ਹੈ। ਕਿਹੜੀ ਚੀਜ਼ ਸਿੰਗਲ ਵੈਲਯੂ ਐਨੋਟੇਸ਼ਨਾਂ ਨੂੰ ਆਮ ਐਨੋਟੇਸ਼ਨਾਂ ਤੋਂ ਵੱਖਰੀ ਬਣਾਉਂਦੀ ਹੈ ਉਹ ਇਹ ਹੈ ਕਿ ਇਹ ਐਨੋਟੇਸ਼ਨ ਇੱਕ ਸ਼ਾਰਟਹੈਂਡ ਫਾਰਮ ਨੂੰ ਸਿੰਗਲ ਮੈਂਬਰ ਦੇ ਇੱਕ ਖਾਸ ਮੁੱਲ ਨੂੰ ਦਰਸਾਉਣ ਜਾਂ ਬਿਆਨ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ। ਕਿਉਂਕਿ ਇਸ ਕਿਸਮ ਦੀ ਐਨੋਟੇਸ਼ਨ ਵਿੱਚ ਸਿਰਫ ਇੱਕ ਮੈਂਬਰ ਹੁੰਦਾ ਹੈ, ਤੁਹਾਨੂੰ ਇਸ ਲਈ ਇੱਕ ਖਾਸ ਮੁੱਲ ਸ਼ੁਰੂ ਕਰਨ ਜਾਂ ਨਿਰਧਾਰਤ ਕਰਨ ਵੇਲੇ ਮੈਂਬਰ ਦਾ ਨਾਮ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ ਹੈ। ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ ਕਿ ਇਕੋ ਮੈਂਬਰ ਦਾ ਮੁੱਲ ਤੈਅ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ ਇਸ ਕਿਸਮ ਦੀ ਐਨੋਟੇਸ਼ਨ ਲਈ ਸ਼ਾਰਟਹੈਂਡ ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਮੈਂਬਰ ਦਾ ਨਾਮ 'ਮੁੱਲ' ਦੇਣਾ ਹੋਵੇਗਾ।
ਨਮੂਨਾ ਕੋਡ
// ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਜਾਵਾ ਸਿੰਗਲ ਮੈਂਬਰ ਐਨੋਟੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਨੂੰ ਦਿਖਾਉਣ ਲਈ ਇੱਕ ਨਮੂਨਾ ਕੋਡ ਹੈ। ਇਸ ਕੋਡ ਸਨਿੱਪਟ ਵਿੱਚ, ਇੱਕ ਸਿੰਗਲ ਮੈਂਬਰ ਐਨੋਟੇਸ਼ਨ ਬਣਾਈ ਜਾਵੇਗੀ ਅਤੇ ਆਯਾਤ java.lang.annotation ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਵੇਗੀ।*; java.lang.reflect.* ਨੂੰ ਆਯਾਤ ਕਰੋ; @ਰਟੀਨਸ਼ਨ (ਰਿਟੇਨਸ਼ਨ ਪਾਲਿਸੀ. ਰਨਟਾਈਮ) @ਇੰਟਰਫੇਸ ਮਾਈਸਿੰਗਲ { ਇੰਟ ਵੈਲਯੂ () } ਕਲਾਸ ਸਿੰਗਲ { @ਮਾਈਸਿੰਗਲ (10) ਪਬਲਿਕ ਸਟੈਟਿਕ ਵਾਇਡ myMethod() { ਸਿੰਗਲ obj = ਨਵਾਂ ਸਿੰਗਲ (); ਕੋਸ਼ਿਸ਼ ਕਰੋ { ਵਿਧੀ m = obj.getClass().getMethod ("myMethod"); MySingle anno = m.getAnnotation (MySingle.class); System.out.println (anno.value ()); } ਕੈਚ (NoSuchMethodException exc) { System.out.println (“ਵਿਧੀ ਨਹੀਂ ਮਿਲੀ!!”); } } ਪਬਲਿਕ ਸਟੈਟਿਕ ਵਾਇਡ ਮੇਨ (ਸਟ੍ਰਿੰਗ ਆਰਗਸ []) { myMethod (); } }
ਆਉਟਪੁੱਟ
10
ਆਉਟਪੁੱਟ ਦੀ ਵਿਆਖਿਆ
ਜਿਵੇਂ ਕਿ ਪ੍ਰੋਗਰਾਮ ਤੋਂ ਉਮੀਦ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਆਉਟਪੁੱਟ 10 ਹੈ। ਇਹ ਇਸ ਲਈ ਹੈ ਕਿਉਂਕਿ @MySingle ਐਨੋਟੇਸ਼ਨ myMethod() ਵਿਧੀ ਦੀ ਵਿਆਖਿਆ ਕਰਦੀ ਹੈ: @MySingle(10)।
ਕਿਉਂਕਿ ਇੱਥੇ ਸਿਰਫ਼ ਇੱਕ ਮੈਂਬਰ ਹੈ, ਇਸ ਲਈ ਮੈਂਬਰ ਦਾ ਨਾਂ ਨਹੀਂ ਦੱਸਿਆ ਗਿਆ ਹੈ। ਸਿੰਗਲ ਵੈਲਯੂ ਐਨੋਟੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਉਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ ਐਨੋਟੇਟ ਕਰਨ ਲਈ ਵੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਿੱਥੇ ਹੋਰ ਮੈਂਬਰ ਹਨ। ਹਾਲਾਂਕਿ, ਸਾਰੇ ਮੈਂਬਰਾਂ ਦੇ ਡਿਫਾਲਟ ਨਾਮ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ।
ਉਦਾਹਰਨ:
@ਇੰਟਰਫੇਸ SomeAnnotate { int value; int abc() ਡਿਫਾਲਟ 0; }
0 Comments